Lundquist 2011
Lundquist 2011
No. 1409
Christian Lundquist
Linköping 2011
Cover illustration: The intensity map describes the density of stationary targets
along the road edges. A photo of the the driver’s view in the green car is shown
in Figure 5a on Page 216.
Christian Lundquist
[email protected]
www.control.isy.liu.se
Division of Automatic Control
Department of Electrical Engineering
Linköping University
SE–581 83 Linköping
Sweden
v
Populärvetenskaplig sammanfattning
Dagens bilar blir säkrare för varje år. Tidigare var det den passiva säkerheten med
bilbälten, krockkuddar och krockzoner som förbättrades. Nu sker de snabbaste
förändringarna inom aktiv säkerhet, med förarstödsystem såsom antisladd och
nödbromssystem och förarvarningssystem för farliga filbyten och framförvaran-
de hinder.
Förarstödsystem kräver omvärldsuppfattning, och de sensorer för detta som finns
i bruk idag är kamera och radar. Kameran ser t.ex. filmarkeringar och kan använ-
das för att detektera fordon och fotgängare. Radarn är mycket bra på att detekte-
ra rörliga objekt och på avståndsbedömning, och används idag för att följa bilen
framför. Radarn ger en mängd information som idag är outnyttjad, och ett syfte
med avhandlingen är att undersöka hur radarinformationen kan användas fullt
ut i framtida säkerhetssystem.
Ett bidrag i avhandlingen är att använda radarns mätningar av stillastående ob-
jekt på och jämte vägen för att bygga upp en lokal karta. Kartan visar områden
som är körbara och hinder som ska undvikas. Ett annat bidrag är att sortera alla
de träffar från rörliga objekt som radarn registrerar och ge en noggrann karta över
hur många andra fordon det finns, samt deras positioner, hastigheter och storle-
kar. Tillsammans bildar dessa två kartor en lägesbild som kan användas i nästa
generations kollisionsundvikande system som kan kombinera broms och styring-
repp för att på ett intelligent, säkert och kontrollerat sätt väja undan i kritiska
nödsituationer.
En annan typ av säkerhetssystem är varningssystem till föraren på förändring-
ar i fordonsdynamiska parametrar som kan försämra köregenskaperna. Exempel
på sådana parametrar är däcktryck, friktion och fellastning. Ett bidrag i avhand-
lingen är ett nytt sätt att skatta en sänkning i däcktryck, genom att kombinera
sensorer i fordonet med satellitnavigering.
De metoder som presenteras i avhandlingen har utvärderats på verkliga data från
bland annat motorvägar och landsvägar i Sverige.
vii
Acknowledgments
It all started in the end of the 80s, when my teacher asked me what I wanted to
become when I grow up. I had only one wish, to study at Chalmers; followed
by my answer my teacher laughed and told me “you will never make it, you are
too stupid". This incentivized me, and encourage by other teachers I managed to
finish school and be admitted at Chalmers. Several years later I’m now here and
I have finished my thesis, something I would never have managed alone, without
the support of many wonderful persons.
I would like to thank my supervisor professor Fredrik Gustafsson for his positive,
inspiring, encouraging and relaxed attitude and my co-supervisor Dr. Thomas B.
Schön for giving me a speedy start into academic research. Whenever I run into
problems Dr. Umut Orguner, who possesses an enormous amount of knowledge
about everything beyond least squares, pushed me in the right direction. Thank
you for your help and for always having time. Further, I would like to acknowl-
edge professor Svante Gunnarsson, who is a skillful head of the group, and his
predecessor professor Lennart Ljung. They have created a wonderful research
atmosphere which makes enjoyable going to office.
Part of the work has been performed with colleagues. I would like to mention Lic.
Karl Granstöm, since one can’t find a better partner to collaborate with. Further
I like to mention Dr. Lars Hammarstrand, at Chalmers, with whom I had very
useful and interesting discussions. Finally, I would like to thank Dr. Emre Özkan,
who opened the Gaussian window and let me see other distributions.
Andreas Andersson at Nira Dynamics AB and Dr. Andreas Eidehall at Volvo Per-
sonvagnar AB have rescued me from the simulation swamp, by supporting me
with measurement data from prototype vehicles. Dr. Gustaf Hendeby and Dr.
Henrik Tidefelt helped me with latex issues, without their support this thesis
would not be in this professional shape. Ulla Salaneck, Åsa Karmelind and Ninna
Stensgård have helped with many practical things during the years in the group.
An important part of the PhD studies is the time spent outside the office bunker,
i.e., in the fika room and in pubs. I would like to thank Lic. Jonas Callmer, Lic.
Karl Granström and Lic. Martin Skoglund for sharing vagnen with me. Further
I would like to thank Lic. Christian Lyzell, Dr. Ragnar Wallin, Dr. Henrik Ohls-
son Lic. Zoran Sjanic and Sina Khoshfetrat Pakazad for being generous and good
friends.
Dr. Wolfgang Reinelt became a mentor for me, he supported and encouraged me
during the time at ZF Lenksysteme GmbH. With him I wrote my first publica-
tions. My former boss Gerd Reimann taught me about vehicle dynamics and the
importance of good experiments; I will always remember Sinuslenken.
One of the most inspiring persons I met is Dr. Peter Bunus. Together with pro-
fessor Fredrik Gustafsson, Dr. David Törnqvist, Lic. Per Skoglar and Lic. Jonas
Callmer we started SenionLab AB. I’m looking forward to keeping on working
with all of them in the near future.
ix
x Acknowledgments
I would like to acknowledge the supported from the SEnsor fusion for Safety
(sefs) project within the Intelligent Vehicle Safety Systems (ivss) program and
the support from the Swedish Research Council under the frame project grant
Extended Target Tracking.
I would never have been able to fulfill my wish to study without the support from
my family, for this I am endlessly thankful. Finally, I would like to thank amore
della mia vita Nadia, who has brought so much love and joy into my life.
Notation xvii
I Background
1 Introduction 3
1.1 Sensor Fusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Automotive Sensor Fusion . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Sensor Fusion for Safety . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 Extended Target Tracking . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5 Components of the Sensor Fusion Framework . . . . . . . . . . . . 7
1.6 Publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.7 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.8 Thesis Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.8.1 Outline of Part I . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.8.2 Outline of Part II . . . . . . . . . . . . . . . . . . . . . . . . 17
3 Estimation Theory 31
3.1 Static Estimation Theory . . . . . . . . . . . . . . . . . . . . . . . . 32
3.1.1 Least Squares Estimator . . . . . . . . . . . . . . . . . . . . 33
3.1.2 Probabilistic Point Estimates . . . . . . . . . . . . . . . . . . 35
3.2 Filter Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.2.1 The Kalman Filter . . . . . . . . . . . . . . . . . . . . . . . . 36
3.2.2 The Extended Kalman Filter . . . . . . . . . . . . . . . . . . 38
3.2.3 The Unscented Kalman Filter . . . . . . . . . . . . . . . . . 39
3.2.4 The Particle Filter . . . . . . . . . . . . . . . . . . . . . . . . 41
xi
xii CONTENTS
4 Target Tracking 45
4.1 Single Target Tracking . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.2 Extension to Multitarget Tracking . . . . . . . . . . . . . . . . . . . 47
4.2.1 Data Association . . . . . . . . . . . . . . . . . . . . . . . . 47
4.2.2 Track Management . . . . . . . . . . . . . . . . . . . . . . . 50
4.3 Extended Target Tracking . . . . . . . . . . . . . . . . . . . . . . . . 51
4.3.1 Point Features . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.3.2 Spatial Distribution . . . . . . . . . . . . . . . . . . . . . . . 53
4.3.3 Elliptical Shaped Target . . . . . . . . . . . . . . . . . . . . 54
4.3.4 Curved Target . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.3.5 Extended Target Tracking and PHD filter . . . . . . . . . . 56
6 Concluding Remarks 77
6.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
6.2 Future Research . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Bibliography 81
II Publications
A Situational Awareness and Road Prediction for Trajectory Control Ap-
plications 97
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
2 Modeling the Environment with a Map . . . . . . . . . . . . . . . . 100
3 Feature Based Map . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
3.1 Radar and Laser . . . . . . . . . . . . . . . . . . . . . . . . . 103
3.2 Cameras and Computer Vision . . . . . . . . . . . . . . . . 104
4 Road Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
4.1 Road Model . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
4.2 Mapping of the Road Lanes . . . . . . . . . . . . . . . . . . 110
4.3 Mapping of the Road Edges . . . . . . . . . . . . . . . . . . 114
CONTENTS xiii
Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
Index 307
Notation
Operators
Notation Meaning
min minimize
max maximize
arg min A the value x that minimizes A
x
arg max A the value x that maximizes A
x
E expectation
Cov covariance
Var variance
diag(a, b) diagonal matrix with elements a and b
blkdiag(A, B) Block diagonal matrix with matrices A and B
Pr(A) probability of event A
AT transpose of matrix A
Std standard deviation
Tr(A) trace of matrix A
|x| absolute value of x (or cardinality if x is a set)
x̂ estimate of the stochastic variable x
, equal by definition
∼ is distributed according to
∝ proportional to
∈ belongs to
ẋ time derivative of x
xvii
xviii Notation
Notation Meaning
iW inverse Wishart distribution
D intesity or phd function
N normal or Gaussian distribution
NiW normal inverse Wishart distribution
Pois Poisson ditribution
St student-t distribution
U uniform distribution
p(x) density function of x
p(x, y) joint density function of x and y
p(x|y) conditional density function of x given y
Sets
Notation Meaning
N set of natural numbers
M set of map variables or features
R set of real numbers
S set of measurement generating points
X set of state variables
Z set of measurements
Nx number of elements in the set X
∅ empty set
Random Variables
Notation Meaning
x state
y measurement (no data association needed)
z measurement (data association needed)
u input
P state covariance
w process noise
Q process noise covariance
e measurement noise
R measurement noise covariance
m map state
p point feature
s state of a measurement generating point
θ parameter
nx dimension of the vector x
x̂k|κ estimate of x at time given measurements y1:κ
Notation xix
Notation Meaning
c Cartesian representation
p polar representation
x Cartesian position x-coordinate (longitudinal)
y Cartesian position y-coordinate (lateral)
z Cartesian position z-coordinate (vertical)
w width
l length
a acceleration
v velocity
u, v pixel coordinates
d displacement vector
r range (between sensor and target)
ψ heading angle, yaw angle or bearing (angle around z-
axis)
Miscellaneous
Notation Meaning
k discrete time variable
T sample time
lb wheel base (distance between front and rear axle)
lt wheel track (distance between left and right wheel)
co road curvature
c1 road curvature derivative
xx Notation
Abbreviations
Abbreviation Meaning
abs antilock braking system
acc adaptive cruise control
c2c car to car communication
can controller area network
eiv errors in variables
eio errors in output
ekf extended Kalman filter
ela emergency lane assist
et-gm-phd extended target Gaussian mixture probability hypoth-
esis density
fisst finite set statistics
fmcw frequency modulated continuous-wave (a radar sys-
tem)
gm-phd gaussian mixture probability hypothesis density
gnn global nearest neighbor (data association)
gps global positioning system
imu inertial measurement unit
kf Kalman filter
lka lane keeping assistance
ls least Squares
mae mean absolute error
map maximum a posteriori
mc Monte Carlo (experiments based on repeated random
sampling)
mgp measurement generating point (reflection point on tar-
get)
ml maximum likelihood
mpf marginalized particle filter
nn nearest neighbor (data association)
ogm occupancy grid map
olr optical lane recognition
ospa optimal subpattern assignment (multitarget evalua-
tion measure)
pdf probability density function
phd probability hypothesis density
pf particle Filter
rfs random finite set
rmse root mean square error
slam simultaneous localization and mapping
s.t. subject to
ukf unscented Kalman filter
virt virtual sensor measurement
wls weighted least squares
Part I
Background
Introduction
1
This thesis is concerned with the problem of estimating the motion of a vehicle
and the characteristics of its surroundings. More specifically, the description of
the ego vehicle’s surroundings consists of other vehicles and stationary objects
as well as the geometry of the road. The signals from several different sensors,
including camera, radar and inertial sensor, must be combined and analyzed to
compute estimates of various quantities and to detect and classify many objects
simultaneously. Sensor fusion allows the system to obtain information that is
better than if it was obtained by individual sensors.
Situation awareness is the perception of environmental features, the comprehen-
sion of their meaning and the prediction of their status in the near future. It
involves being aware of what is happening in and around the vehicle to under-
stand how the subsystems impact on each other.
Sensor fusion is introduced in Section 1.1 and its application within the automo-
tive community is briefly discussed in Section 1.2. The study presented in this
thesis was conducted within two Swedish research project, briefly described in
Section 1.3 and 1.4. The sensor fusion framework and its components, such as
infrastructure, estimation algorithms and various mathematical models, are all
introduced in Section 1.5. Finally, the chapter is concluded with an overview
of the author’s publications in Section 1.6, a statement of the contributions in
Section 1.7 and the outline of this thesis given in Section 1.8.
3
4 1 Introduction
Measurement Model
Figure 1.1: The main components of the sensor fusion framework are shown
in the middle box. The framework receives measurements from several sen-
sors, fuses them and produces one state estimate, which can be used by sev-
eral applications.
in some sense better than it would be if the sensors were used individually. The
term better can in this case mean more accurate, more reliable, more available
and of higher safety integrity. Furthermore, the resulting estimate may in some
cases only be possible to obtain by using data from different types of sensors.
Figure 1.1 illustrates the basic concept of the sensor fusion framework. Many
systems have traditionally been stand alone systems with one or several sensors
transmitting information to only one single application. Using a sensor fusion
approach it might be possible to remove one sensor and still perform the same
tasks, or add new applications without the need to add new sensors.
Sensor fusion is required to reduce cost, system complexity and the number of
components involved and to increase accuracy and confidence of sensing.
the controller area network (can). It is a serial bus communication protocol de-
veloped by Bosch in the early 1980s and presented by Kiencke et al. (1986) at the
sae international congress in Detroit. An overview of the can bus, which has be-
come the de facto standard for automotive communication, is given in Johansson
et al. (2005).
As already mentioned, the topic of this thesis is how to estimate the state vari-
ables describing the ego vehicle’s motion and the characteristics of its surround-
ings. The ego vehicle is one subsystem, labeled (E) in this work. The use of
data from the vehicle’s actuators, e.g., the transmission and the steering wheel,
to estimate a change in position over time is referred to as odometry. The ego
vehicle’s surroundings consists of other vehicles, referred to as targets (T), and
stationary objects as well as the shape and the geometry of the road (R). Map-
ping is the problem of integrating the information obtained by the sensors into a
given representation, denoted (M), see Adams et al. (2007) for a recent overview
and Thrun (2002) for an older survey. Simultaneous localization and mapping
(slam) is an approach used by autonomous vehicles to build a map while at the
Camera Radar
Detects other vehicles, lane other vehicles, sta-
markings, pedestri- tionary objects
ans
Classifies objects yes no
Azimuth angle high accuracy medium accuracy
Range low accuracy very high accuracy
Range rate not very high accuracy
Field of View wide narrow
Weather Condi- sensitive to bad visi- less sensitive
tions bility
6 1 Introduction
(a) (b)
Figure 1.2: Figure (a) shows the camera and Figure (b) the front looking
radar in a Volvo S60 production car. Courtesy of Volvo Car Corporation.
same time keeping track of their current locations, see e.g., Durrant-Whyte and
Bailey (2006); Bailey and Durrant-Whyte (2006). This approach is not treated in
this thesis.
ses (Bengtsson, 2008; Danielsson, 2008; Lundquist, 2009) have been produced.
An overview of the main results in the project is given in Ahrholdt et al. (2009)
and the sensor fusion framework is well described in Bengtsson and Danielsson
(2008). Furthermore it is worth mentioning some of the publications produced by
the project partners. Motion models for tracked vehicles are covered in Svensson
and Gunnarsson (2006); Gunnarsson et al. (2006); Sörstedt et al. (2011). A bet-
ter sensor model of the tracked vehicle is presented in Gunnarsson et al. (2007).
Detection of lane departures and lane changes of leading vehicles is studied in
Schön et al. (2006), with the goal to increase the accuracy of the road geometry es-
timate. Computational complexity for systems obtaining data from sensors with
different sampling rates and different noise distributions is studied in Schön et al.
(2007).
Paper D in this thesis describes a method to estimate and represent stationary
objects along the road edges. This publication is based on data collected from the
sefs prototype car and the work was carried out within the project.
model based methods. The systems discussed in this thesis are primarily dy-
namic and they are modeled using stochastic difference equations. More specif-
ically, the systems are modeled using the discrete-time nonlinear state space
model
xk+1 = fk (xk , uk , wk , θk ), (1.1a)
yk = hk (xk , uk , ek , θk ), (1.1b)
where (1.1a) describes the evolution of the state variable x over time and (1.1b)
explains how the state variable x relates to the measurement y1 . The state vector
at time k is denoted by xk ∈ Rnx , with elements x1 , . . . , xnx being real numbers.
Sensor observations collected at time k are denoted by yk ∈ Rny , with elements
y1 , . . . , yny being real numbers. The model fk in (1.1a) is referred to as the pro-
cess model , the motion model , the dynamic model or the system model, and it
describes how the state propagates in time. The model hk in (1.1b) is referred to
as the measurement model or the sensor model and it describes how the state
is propagated into the measurement space. The random vector wk describes the
process noise, which models the fact that the actual state dynamics is usually
unknown. The random vector ek describes the sensor noise. Furthermore, uk
denotes the deterministic input signals and θk denotes the possibly unknown
parameter vector of the model.
The ego vehicle constitutes an important dynamic system in this thesis. The yaw
and lateral dynamics are modeled using the so called single track model. This
model will be used as an example throughout the thesis. Some of the variables
and parameters in the model are introduced in Example 1.1.
1.1 Example: Single Track Ego Vehicle Model
A so called bicycle model is obtained if the wheels at the front and the rear axle of
a passenger car are modeled as single wheels. This type of model is also referred
to as a single track model and a schematic drawing is given in Figure 1.3. Some
examples of typical variables and parameters are:
State variables x: the yaw rate ψ̇E and the body side slip angle β, i.e.,
h iT
x = ψ̇E β . (1.2)
Measurements y: the yaw rate ψ̇E and the lateral acceleration ay , i.e.,
h iT
y = ψ̇E ay , (1.3)
which both are measured by an inertial measurement unit (imu).
Input signals u: the steering wheel angle δs , which is measured with an angu-
lar sensor at the steering column and the velocity v̇, which is measured by
1 Note that the measurement vector is denoted y when the sensor measures one or several specific
quantities, e.g., acceleration and yaw rate from an imu sensor. However, when the number of sensor
measurements (observations) depends on the environmental circumstances the measurement vector
is denoted z, e.g., for a radar which observes an unknown number of targets. This usually leads to a
data association problem.
1.5 Components of the Sensor Fusion Framework 9
ρ αf
δf
v
β
ψE y W
CoG
αr
OW x
Figure 1.3: Illustration of the geometry for the single track model, describing
the motion of the ego vehicle. The ego vehicle velocity vector v is defined
from the center of gravity (CoG) and its angle to the longitudinal axis of the
vehicle is denoted by β, referred to as the body side slip angle. Furthermore,
the slip angles are referred to as αf and αr . The front wheel angle is denoted
by δf and the current driven radius is denoted by ρ.
Parameters θ: the vehicle mass m, which is weighed before the tests, the steering
ratio is between the steering wheel angle and the front wheels, which has to
be estimated in advance, and the tire parameter Cα , which is estimated on-
line, since the parameter value changes due to different road and weather
conditions.
The model (1.1) must describe the essential properties of the system, but it must
also be simple enough to be efficiently used within a state estimation algorithm.
Chapter 3 describes algorithms that are used to compute estimates of the state xk
and the parameter θk in (1.1).
Before describing the individual steps of the sensor fusion framework another
important example is presented in Example 1.2.
The different steps of a typical sensor fusion algorithm, as the central part of
the larger framework, are shown in Figure 1.4. The algorithm is initiated using
a prior guess of the state x0 or, if it is not the first iteration, the state estimate
x̂k−1|k−1 from the previous time step k − 1 is used. New measurements Zk are col-
lected from the sensors and preprocessed at time k. Model (1.1) is used to predict
the state estimate x̂k|k−1 and the measurement ẑk|k−1 . For Example 1.2 it is nec-
essary to associate the radar observations Zk with the predicted measurements
Zk|k−1 of the existing state estimates and to manage the tracks, i.e., initiate new
b
states and remove old, invalid states. The data association and track management
are further discussed in Section 4.2. Finally, the new measurement zk is used to
calculate the state estimate x̂k|k at time k in the so called measurement update
step. The prediction and measurement update are described in Section 3.2. This
algorithm is iterated, x̂k|k is used to predict x̂k+1|k , new measurements Zk+1 are
collected at time k + 1 and so on. The state estimation theory, as part of the sensor
fusion framework, is discussed further in Chapter 3. Note that in Example 1.1,
the data association and track management are obviously not needed, since there
the data association is assumed fixed. In the example the measurements y from
the pre-processing are fed directly to the measurement update.
1.6 Publications
Published work of the author that are of relevance to this thesis are listed below.
The publications are clustered in groups preambled by a short summary. The
publications are principally listed in chronological order.
The author has been involved in the development of an active steering system
prior to starting his PhD-studies. The active steering system superimposes an
1.6 Publications 11
Zk pre-
sensor
processing
Zk
Figure 1.4: The new measurements Zk contain new information and are as-
sociated to the predicted states b
Xk|k−1 and thereafter used to update them to
obtain the improved state estimates b Xk|k .
electronically controlled angle to the driver’s steering input. The aim of the sys-
tem is to reduce the driver’s steering efforts at low velocities, to reduce the vehi-
cle’s sensibility at very high velocities and to intervene when the vehicle tends to
become unstable. The system is thoroughly described in
W. Reinelt and C. Lundquist. Mechatronische Lenksysteme: Mod-
ellbildung und Funktionalität des Active Front Steering. In R. Is-
ermann, editor, Fahrdynamik Regelung - Modellbildung, Fahrassis-
tenzsysteme, Mechatronik, pages 213–236. Vieweg Verlag, September
2006a.
W. Reinelt, W. Klier, G. Reimann, C. Lundquist, W. Schuster, and R.
Großheim. Active front steering for passenger cars: System modelling
and functions. In Proceedings of the IFAC Symposium on Advances
in Automotive Control, Salerno, Italy, April 2004.
Sensor fusion based monitoring systems are described in
W. Reinelt, C. Lundquist, and H. Johansson. On-line sensor monitor-
ing in an active front steering system using extended Kalman filtering.
In Proceedings of the SAE World Congress, SAE paper 2005-01-1271,
Detroit, MI, USA, April 2005.
W. Reinelt and C. Lundquist. Observer based sensor monitoring in
an active front steering system using explicit sensor failure modeling.
In Proceedings of the IFAC World Congress, Prague, Czech Republic,
July 2005.
S. Malinen, C. Lundquist, and W. Reinelt. Fault detection of a steering
wheel sensor signal in an active front steering system. In Preprints
of the IFAC Symposium on SAFEPROCESS, pages 547–552, Beijing,
China, August 2006.
C. Lundquist and W. Reinelt. Electric motor rotor position monitor-
ing method for electrically aided steering system e.g. steer by wire,
12 1 Introduction
A marginalized particle filter based method to estimate the tire radii, and thereby
being able to detect pressure losses is presented in
1.7 Contributions
The main contributions of this thesis are briefly summarized and presented be-
low:
Mapping: An overview of different methods to map stationary objects in the sur-
roundings of the vehicle are summarized in Paper A.
Road curvature estimation: The estimation from camera and radar is improved
by using information about the ego vehicle motion. The results are pre-
sented in Paper B.
Road edge estimation: Errors in variables methods are applied in order to track
the road edges using point measurements, and the results are given in Pa-
per C. The edges are modeled as extended targets.
Intensity based map: An intensity function is used to represent stationary ob-
jects along the road. Structures in the road are used to improve the update
and representation of the map as described in Paper D.
Extended target tracking: A modification of the gm-phd filter, which is able to
handle extended targets, is presented in Paper E.
Target size estimation: An approach to estimate the size and the shape is intro-
duced in Paper F. The tracking framework contains a hybrid state space
where measurement generating points and the measurements are modeled
by random finite sets and target states by random vectors.
Tire radii estimation: The marginalized particle filter is applied to the problem
of estimating the tire radii of a vehicle. The Bayesian method, presented in
Paper G, is efficient and the estimate is more accurate than estimates from
comparable methods.
21
22 2 Models of Dynamic Systems
Road models are treated in Paper A to D. A good overview of available and com-
monly used road models is given in Paper A, and therefore no introduction to
road modeling in general is given in this chapter. However, road models are of-
ten combined with ego vehicle models and described in one single state space
2.1 Overview of the Models Used in the Thesis 23
Table 2.1: Typical ranges for the vehicle parameters used in the single track
model.
m Izz Cα lf + lr
kg kgm2 N/rad m
model. One approach is presented in Paper B and compared with two other vehi-
cle models with road interaction, which are described as follows.
The first model is described in Example 2.2 and it is commonly used for au-
tonomous driving and lane keeping. This model is well described by e.g., Dick-
manns (2007) and Behringer (1997). Note that the ego vehicle’s motion is mod-
eled with respect to a road fixed coordinate frame, unlike the single track model
in Example 2.1, which is modeled in a Cartesian world coordinate frame.
The steering wheel angle might have a bias, for example if the sensor is not cal-
ibrated, which leads to an accumulation of the side slip angle β in (2.9). Other
reasons for a steering wheel angle bias is track torsion or strong side wind, which
the driver compensates for with the steering wheel. The problem is solved by
24 2 Models of Dynamic Systems
Note that the curvature c0 is included in (2.6). The curvature c0 is usually treated
as a state variable and in this example the vehicle motion model is augmented
with the simple clothoid road model, see Paper A.
Another and simpler vehicle model is obtained if the side slip angle is omitted
and the ego vehicle’s yaw rate ψ̇E is used instead of the steering wheel angle. The
model is summarized in Example 2.3, and thoroughly described together with
results in Eidehall (2007); Eidehall et al. (2007); Eidehall and Gustafsson (2006);
Gern et al. (2000, 2001); Zomotor and Franke (1997).
More advanced vehicle models with more degrees of freedom, including the two
track model, are described by Schofield (2008).
2.1 Overview of the Models Used in the Thesis 25
In this work, only measurements from the ego vehicle’s sensors are available; that
is the target’s motion is measured using the ego vehicle’s radar and camera. This
is the reason for why the target model is simpler than the ego vehicle model. The
targets play an important role in the sensor fusion framework presented in this
work, but little effort has been spent modeling their motion. Instead standard
models from target tracking literature are used. A survey of different process
models and measurement models are given by Rong Li and Jilkov (2003) and
Rong Li and Jilkov (2001), respectively. The subject is also covered in the books
by Blackman and Popoli (1999) and Bar-Shalom et al. (2001). One typical target
model is given in Example 2.4. This model is used in the Papers F and G, and a
somewhat similar model, called constant velocity model, is used in Paper E.
Simpler than using the exact sampling formula (2.19) is it to make use of the
standard forward Euler method, which approximates (2.2a) according to
xk+1 ≈ xk + T a(xk , uk , wk , θk ) , fk (xk , uk , wk , θk ). (2.21)
This is a very rough approximation with many disadvantages, but it is frequently
used due to its simplicity. Example 2.6 shows the Euler approximation of the
coordinated turn model.
The model is linear in the input δf ,k . However, the input vk is implicitly modeled
in the matrices Fk (vk , θk ), Gku (vk , θk ) and Hk (vk , θk ).
Linear state space models and linear system theory in general are thoroughly de-
scribed by Rugh (1996) and Kailath (1980).
In Example 1.1 an ego vehicle model was introduced, where the steering wheel
angle and the vehicle velocity were modeled as deterministic input signals. This
consideration can be motivated by claiming that the driver controls the vehicle’s
lateral movement with the steering wheel and the longitudinal movement with
the throttle and brake pedals. Furthermore, the steering wheel angle and the
velocity are measured with less noise than the other measurement signals, and
2.4 Nonlinear State Space Model with Additive Noise 29
they are often pre-processed to improve the accuracy and remove bias. With
these arguments the resulting model, given in Example 2.1, may be employed.
The model is in some sense simpler than the case when these two signals are
assumed to be stochastic measurements, as shown in Example 2.8.
where T is the sample time. The first two rows of the process and measurement
models are the discretized versions of the model given in (2.4). In the second row
in the measurement model the simplification cos δf ≈ 1 and sin δf ≈ 0 is made
to not let the measurement model be dependent on the measurement δf . The
third measurement signal is the steering wheel angle δs , but the third state is the
front wheel angle δf . A possible measurement model hδf will be discussed in
Example 3.1. Finally, a random walk is assumed for the front wheel angle δf and
the velocity v in the process model.
Another way to represent the state space model is given by considering the prob-
ability density function (pdf) of different signals or state variables of a system.
The transition density p(xk+1 |xk ) models the dynamics of the system and if the
process noise is assumed additive, the transition model is given by
p(xk+1 |xk ) = pw (xk+1 − f (xk , uk , θk )), (2.27)
where pw denotes the pdf of the process noise w. The density describes the state
at time k + 1 given that information about the state at the previous time step k is
known. A fundamental property of the process model is the Markov property,
p(xk+1 |x1 , . . . , xk ) = p(xk+1 |xk ). (2.28)
This means that the state of the system at time k contains all necessary informa-
tion about the past, which is needed to predict the future behavior of the system.
30 2 Models of Dynamic Systems
31
32 3 Estimation Theory
For various reasons some systems are only modeled by a likelihood function. Of-
ten these systems are static and there exists no Markov transition density. How-
ever, most systems in this thesis are modeled using both a prediction and a like-
lihood function. In system identification, the model parameter is estimated with-
out physically describing the parameter’s time dependency, hence static estima-
tion theory is used. The state can be estimated in more or less the same way.
However, the process model (1.1a) is often given and its time transition informa-
tion is exploited to further improve the state estimate.
The origins of the estimation research field can be traced back to the work by
Gauss in 1795 on least squares (Abdulle and Wanner, 2002) and Bayes (1763)
on conditional probabilities. Bayes introduced an important theorem which has
come to be referred to as Bayes’ theorem,
p(y|x, θ)p(x, θ)
p(x, θ|y) = , (3.2)
p(y)
with which it is possible to calculate the posterior probability p(x, θ|y) given a
prior probability p(x, θ) and the likelihood function p(y|x, θ). Note that both
the measurement and the state or parameter are treated as random variables.
Another view of the estimation problem was introduced by Fisher (1922), who
claimed that the probability of an estimate should be seen as a relative frequency
of the state or parameter, given data from long-run experiments. Fisher also
treats the measurement as a random variable. The main difference to Bayes’ ap-
proach is that in Fisher’s approach there is a true state or parameter which is
treated as deterministic, but unknown. To accentuate the different views, the
likelihood is often written using `(x, θ) to emphasize that the likelihood is re-
garded as a function of the state x and the parameter θ.
After this brief historical background, the remainder of this chapter is outlined
as follows. In Section 3.1, static estimation methods based on both Fishers and
Bayes theories, are discussed. These methods can be used for both state and
parameter estimation. In Section 3.2, dynamic estimation methods are discussed.
These methods are, within the scope of this thesis, only used for state estimation
and are based solely on Bayes’ theories.
How to separate a typical estimation problem into these two parts is shown Ex-
ample 3.2.
General estimation techniques are covered by most textbooks on this topic, e.g.,
Kay (1993); Kailath et al. (2000); Ljung (1999). There are many estimation meth-
ods available, however, in this section the focus is on the methods used in Part II
of this thesis.
3.2 Example: Parameter and State Estimation
Consider the linear single track model in Example 2.7. Suppose that the state
variables are measured with external and highly accurate sensors. The yaw rate
is measured with an extra imu and the body side slip angle β is measured with
a so called Correvit® sensor, which uses correlation technology to compute the
optical flow. The vehicle in Figure 2 on Page 297 is equipped with this type of
sensor at the front. Now, the parameter θ can be estimated, according to (3.3a).
This approach has been used to find some of the vehicle parameters in Papers B
and G.
Conversely, if θ is known and y is measured, the state variables x can be estimated
using (3.3b).
This section covers estimation problems without any process model f ( · ), where
a set of measurements is related to a parameter only via the measurement model
h( · ). Furthermore, only an important and special case where the measurement
model is linear in x is considered. The linear measurement model was given
in (2.23b) and is repeated here for convenience
yk = Hk (θ)xk + ek . (3.4)
Another example, where both the ls and the wls estimators are applied, is given
in Paper C. The left and right borders of a road are modeled by polynomials and
the coefficients are the parameters which are estimated given a batch of measure-
ments from a radar.
Put into words, the estimate is chosen to be the parameter most likely to produce
the obtained measurements.
The posterior p(xk |y1:k ), when xk is random, contains all known information
about the state of the target at time k. The maximum a posteriori (map) esti-
mator is defined by
x̂MAP
k = arg max p(xk |y1:k ) = arg max p(y1:k |xk )p(xk ), (3.12)
xk xk
or put in words, find the most likely estimate of the parameter given the measure-
ments y1:k . Bayes’ theorem (3.2) and the fact that the maximization is performed
over xk is used in the second equality of (3.12). The ml estimate is for instance
used in Paper E.
↑ ↑
If p(yk |xk ), p(xk+1 |xk ) and p(xk ) are Gaussian and their corresponding process
and senor models are linear, as in (2.23), then (3.13a) and (3.13b) reduce to the
Kalman filter prediction and measurement update, respectively. The Kalman
filter is treated in Section 3.2.1. In contrast, if p(yk |xk ), p(xk+1 |xk ) and p(xk )
can be approximated by a Gaussian and their corresponding process and sensor
models are nonlinear (2.1), several approximations of (3.13a) and (3.13b) exist.
The two most common filters are the extended Kalman Filter and the unscented
Kalman filter, which are outlined in Sections 3.2.2 and 3.2.3, respectively. Other
methods, including methods that approximate other density functions than Gaus-
sian, are neatly covered by Hendeby (2008) and Schön (2006). The most pop-
ular approaches are the particle filter, which is covered in Section 3.2.4, and
the marginalized particle filter, see e.g., Arulampalam et al. (2002); Cappe et al.
(2007); Djuric et al. (2003); Karlsson (2005); Schön et al. (2005).
The linear state space representation subject to Gaussian noise, which was given
in (2.23), is the simplest special case when it comes to state estimation. The model
is repeated here for convenience;
xk+1 = Fk (θ)xk + Gku (θ)uk + Gkw wk , wk ∼ N (0, Qk ), (3.15a)
yk = Hk (θ)xk + Hku (θ)uk + ek , ek ∼ N (0, Rk ). (3.15b)
The linear model (3.15) has two important properties. All density functions in-
volved in the model and state estimation are Gaussian and a Gaussian density
function is completely parametrized by the mean and the covariance, i.e. the first
and second order moment. Hence, the Bayesian recursion (3.13) is simplified
into only propagating the mean and covariance of the involved probability den-
3.2 Filter Theory 37
↑ ↑
The linearization used in the ekf assumes that all second and higher order terms
in the Taylor expansion are negligible. This is certainly true for many systems,
but for some systems this assumption can significantly degrade the estimation
performance. Higher order ekf are discussed by Roth and Gustafsson (2011); Bar-
Shalom and Fortmann (1988); Gustafsson (2000). This problem will be revisited
in the next section.
If the noise is additive, then the noise covariances can be added directly to the
estimated covariances of the non-augmented sigma points.
There exist many possibilities to choose the sigma points, a thorough discussion
about different alternatives is presented by Julier and Uhlmann (2004). In the
present work only the standard form is reproduced. The basic principle is to
choose one sigma point in the mean of xa and 2na points symmetrically on a
given contour, described by the state covariance P a . The sigma points χ i and the
associated weights w(i) are chosen as
χ(0) = x̂a w(0) = w(0) (3.24a)
1 − w(0)
r !
na
χ(i) = χ(0) + Pa w(i) = (3.24b)
1 − w(0) i 2na
1 − w(0)
r !
(i+na ) (0) na
χ =χ − Pa w(i+na ) = (3.24c)
1 − w(0) i 2na
√
for i = 1, . . . , na , where ( A)i is the i th column of any matrix B, such that A = BBT .
The augmented state vector makes it possible to propagate and estimate nonlin-
40 3 Estimation Theory
ear influences that the process noise and the measurement noise have on the state
vector and the measurement vector, respectively. The weight on the mean w(0) is
used for tuning and according to Julier and Uhlmann (2004) preferable proper-
ties for Gaussian density functions are obtained by choosing w(0) = 1 − n3a . After
the sigma points have been acquired, the augmented state vector can be parti-
tioned according to
x
χk|k
a
χk|k = χkw . (3.24d)
e
χk+1
The rest of the ukf is summarized in Algorithm 5.
An advantage of the ukf, compared to the ekf, is that the second order bias cor-
rection term is implicitly incorporated in the mean estimate. Example 3.5 shows
an important problem where the second order term should not be neglected.
3.2 Filter Theory 41
Let the sensor be located at the origin and the target at (x, y) = (0, 1) in this simple,
and commonly used example (Julier and Uhlmann, 2004). Measurements may be
simulated by adding Gaussian noise to the actual polar value (r, ψ) = (1, π/2)
of the target localization. A plot of several hundred state estimates, produced
in a Monte Carlo simulation, forms a banana shaped arc around the true value
(x, y) = (0, 1), as shown in Figure 3.1. The azimuth error causes this band of
Cartesian points to be stretched around the circumference of a circle, with the
result that the mean of these points lies somewhat closer to the origin than the
point (0, 1). In the figure it is clearly shown that that the ut estimate (×) lies
close to the mean of the measurements (◦). Furthermore, it is shown that the
linearized state estimate (+) produced by the ekf is biased and the variance in
the y component is underestimated.
As a result of the linearization in the ekf, the second order terms are neglected,
which produces a bias error in the mean as shown in Example 3.5. In Julier and
Uhlmann (2004) it is shown how the ut in some cases calculates the projected
mean and covariance correctly to the second order terms.
0.8
0.6
y
0.4
0.2
0 Sensor
−0.2
−0.6 −0.4 −0.2 0 0.2 0.4 0.6
x
(a)
1.02
0.98
0.96
y
0.94
0.92
0.9
−0.3 −0.2 −0.1 0 0.1 0.2 0.3
x
(b)
This chapter begins by putting the filter, introduced in the last chapter about
estimation theory, into the target tracking framework. In Section 4.1 the focus
is on the filter and therefore only the single target case is considered. An au-
tomotive target tracking system, must obviously be able to handle multiple tar-
gets, because potentially more than one vehicle are surrounding the own vehicle.
Therefore the chapter is continued by discussing the extension to multi target
tracking in Section 4.2. When reading the first two sections, compare with the
block diagram of the target tracking framework illustrated in the introduction in
Figure 1.4. Finally, in Section 4.3 the system is further enlarged to also be able to
track the shape and size of the the targets. This research area is called extended
target tracking.
45
46 4 Target Tracking
observation space
zk+1
zk
state space
target motion
xk+1
xk
Figure 4.1: Single target tracking problem. The upper layer is the observa-
tion space with the measurements and the lower layer is the state space with
the state variables.
The single target Bayes filter recursion consists of two steps, the prediction step
and the correction step. Since all variables are assumed to be unknown stochastic
variables in the Bayesian framework it is necessary to describe a priori informa-
tion about the state in the form of a prior density p0 (x0 ). The recursion was
illustrated with a flow chart in Section 3.2. A special case is the Kalman filter,
where the densities are assumed to be Gaussian.
4.2 Extension to Multitarget Tracking 47
it must also estimate the number of targets Nx , and find likely associations of the
measurements to the tracks. The latter uncertainty is known as the data associa-
tion problem.
A typical multi target system is shown in Figure 4.2, where several targets exist
at each time step. Aspects to consider in a multitarget tracking filter are listed
below:
• The number of targets Nx changes over time, for instance there are probably
more vehicles on the roads during rush hour than in the night.
• New targets appear and old targets disappear, as they enter or leave the
field of view of the sensor. Compare with Figure 4.2, where target x(4) ap-
pears at time k + 1.
• The system fails to detect targets because they are temporarily occluded or
because the sensor data is very noisy.
• The sensors receive a set of spurious measurements, also denoted clutter,
stemming from false reflections or from other type of objects in the field
of view, etc. In Figure 4.2 there are more observations than targets at each
time step.
In this section first the data association problem is treated in Section 4.2.1 and
thereafter an overview of the track management, which takes care of the prob-
lems in the list above is given in Section 4.2.2.
Figure 4.2: Multi target tracking system, several state vectors are present at
each time step and producing more than one observation. Note that there
are more observations than targets. A new target x(4) appears at time k + 1.
where γG is the gating threshold or gate size. Given a certain probability that a
true measurement produced by a target i will fall inside its gate, and that the
2
assumption di,j ∼ χn2y holds, a suitable gate threshold can be determined. The
(j) (i)
measurements zk ∈ Gi are considered as candidates for updating the track xk in
the data association algorithm. In other words the gating is a hard decision about
which measurements are feasible measurements for a target.
Now, different conflicts occur. There are several measurements falling within the
4.2 Extension to Multitarget Tracking 49
same gate and there are also measurements falling within more than one gate.
There exist many techniques to solve these conflicts, which are considered to be
the main part of the data association process. The simplest association algorithm
is called nearest neighbor (nn). This approach searches for a unique pairing,
(i) (j)
i.e., one track xk is only updated by at most one observation zk . There are
some possibilities to decide which measurement actually is the nearest. Common
(i,j)
approaches are to choose the measurement with the smallest error z̃k|k−1 or the
(i,j)
smallest statistical distance d 2 (z̃k|k−1 ), defined in (4.5), which is also known as the
Mahalanobis distance, see e.g., Bar-Shalom et al. (2001). The association distance
for each individual track is locally minimized separately with the nn approach,
which could lead to that two tracks are associated with the same measurement.
To avoid this problem it would be more beneficial to find the global minimum
distance considering all tracks simultaneously, and restrict that a measurement
can only be associated with one track. This approach is referred to as global
nearest neighbor (gnn), and its aim is to solve
Nk
X
2
min = di,λ i
(4.7)
λ
i
There exist a further group of association methods, which uses all measurements
that fall inside the gate. In these methods each measurement j is weighted in
accordance with the probability that it originates from track i. The two most
well known algorithms are probabilistic data association (pda) (Bar-Shalom and
Tse, 1975) and joint probabilistic data association (jpda) (Fortmann et al., 1983),
50 4 Target Tracking
(4) (4)
zk (6)
zk (6)
zk zk
(3) (3)
zk
(1) (1 ) zk (1)
zk (1 ) zk
ẑk |k −1 (2)
ẑk |k −1 (2)
ẑk |k −1 ẑk |k −1
(5) (5)
(2)
zk (2)
zk
zk zk
Figure 4.3: An example with two targets (blue and green) and six measure-
ments (in red). The ellipses are the gates and the two figures show the differ-
ence between the association methods nn and gnn.
where the difference lies in that pda considers each track separately, whereas
jpda forms global hypotheses to calculate the probabilities. Note that the number
of targets is assumed fixed in the above mentioned association methods. These
methods are not further discussed in this thesis, hence a detailed description is
omitted at this place.
pear from a certain place, but in most cases it is not easy to know beforehand.
A practical and straightforward method is to use the first measurement as the
mean value of the prior distribution. Other statistics of the prior distribution
are still considered as design variables. A better approach may be considered in
the Kalman filter, where the prior distribution is Gaussian and may be chosen as
x0 ∼ N (0, P0 ). If P0 is chosen very large in comparison with the measurement un-
certainty, the first updated state estimate will largely be based on the associated
measurement.
In order to know if the first measurement stems from a true target or from clut-
ter, the track management system must observe the tentative track for a number
of samples. There exist different methods to decide if a tentative track shall be
transformed into a confirmed track. One of the simplest and most well known
is the so called M/N logic, where a track is confirmed if M measurements out of
N possible are associated with the track. Other common methods are based on
scoring measurements, with for example sequential probability ratio test (sprt),
which was first proposed by Wald (1945). The method is based on comparing
the ratio between the likelihood of the hypothesis that a track describes a true
target and the likelihood of the hypothesis that it is a false alarm. Furthermore,
there exist combined validation and association methods. Integrated probabilis-
tic data association (ipda) expresses both the probability of target existence and
data association based on pda.
The track deletion methods are similar to the validation methods, both the M/N
logic and the score based approaches, mentioned above, can be applied. More
information and details about track management can be found in various books
about target tracking, see e.g., Blackman and Popoli (1999).
4.2 Definition (Extended Target). A target which potentially gives rise to more
than one measurement per time step irrespective of whether the target’s extent is
explicitly modeled (and/or estimated) or not is referred to as an extended target.
The methods used to track extended target are very similar to the ones used for
tracking a group of targets moving in formation. Extended target tracking and
group tracking are thoroughly described in e.g., Ristic et al. (2004). The bibli-
ography of Waxman and Drummond (2004) provides a comprehensive overview
of existing literature in the area of group and cluster tracking. There exist some
different approaches to represent, i.e., to model, the extended targets, of which
five methods are described in this section.
The uncertainty about the exact position of the point feature is modeled accord-
4.3 Extended Target Tracking 53
ing to
Np
Y
p(P W
|dTWW , ψT ) = N (p(i),W |RW T (ψT )p(i),T + dTWW , wp I2 ), (4.12)
i=1
which means that the uncertainty is assumed isotropic around the mean location
of the point and with known variance wp .
z N
At each time step a set of Nz measurements Z = {zi }i=1 is received and has to be as-
sociated to the states. Not all measurements arise from a point feature, some are
due to false detections (clutter). The association hypotheses are derived through
some data association algorithm. In Vermaak et al. (2005) a method is proposed
where the association hypotheses are included in the state vector and the output
of the tracking filter is a joint posterior density function of the state vector and the
association hypotheses. Furthermore, a multi-hypothesis likelihood is obtained
by marginalizing over all the association hypotheses. An alternative solution is
also proposed using a particle filter, where the unknown hypotheses are sampled
from a well designed proposal density function.
An automotive radar sensor model developed for simulation purposes is pro-
posed in Bühren and Yang (2006), where it is assumed that radar sensors often
receive measurements from specific reflection centers on a vehicle. These reflec-
tion centers can be tracked in a filter and valuable information regarding the
vehicle’s orientation can be extracted as shown by Gunnarsson et al. (2007). A
difficulty in solving the data association problem is the large number of associ-
ation hypotheses available. To reduce the complexity Gunnarsson et al. (2007)
proposes an approach where detections are associated with reflector groups. The
spatial Poisson distribution, discussed in the subsequent section, is considered to
be inappropriate, since the number of vehicle detections is assumed essentially
known and not adequately modeled by a Poisson process.
In paper F the point features are denoted measurement generating points (mgp),
and they are positioned on the surface of the target. In the referred publication,
the mgps are not considered having a fixed position on the surface, but they are
instead defined as a random finite set of points on the one-dimensional surface of
the target. The positions of the points on the surface are estimated in the target
tracking filter, but they are of less importance, since they only serve as a means
to estimate the position, shape and size of the entire target.
dent sample from the spatial distribution. The spatial model could be a bounded
distribution, such as a uniform pdf or an unbounded distribution, such as a Gaus-
sian. The Poisson assumption allows the problem, or more specifically the evalu-
ation of the likelihood, to be solved without association hypotheses. The spatial
distribution is preferable where the point source models are poor representations
of reality, that is in cases where the measurement generation is diffuse.
In Gilholm and Salmond (2005) two simple examples are given. One where the
principle axis of the extended target is aligned with the velocity vector, i.e., the
target is represented by a one dimensional uniform stick model. In the other
example, a Gaussian mixture model is assumed for the target. A Kalman filter
implementation with explicit constructions of assignment hypotheses is derived
from the likelihood in Gilholm and Salmond (2005), whereas in Gilholm et al.
(2005), a particle filter is applied directly given the likelihood which is repre-
sented by the Poisson spatial model of the stick. Hence, the need to construct
explicit measurement-target assignment hypotheses is avoided in Gilholm et al.
(2005). Swain and Clark (2010) proposes instead a standard measurement model
but represents instead the extended targets as a spacial cluster process.
Boers et al. (2006) presents a similar approach, but since raw data is considered,
no data association hypotheses are needed. The method to use raw data, i.e., con-
sider the measurements without applying a threshold, is referred to as track be-
fore detect. A one dimensional stick target is assumed also by Boers et al. (2006),
but unlike Gilholm and Salmond (2005), the target extent is assumed unknown.
The state vector is given by the stick’s center position and velocity as well as the
stick’s extension according to
h iT
x = x y ẋ ẏ l . (4.13)
The process model is a simple constant velocity model and the length l is modeled
as a random walk. The likelihood function is given by the probability distribution
Z
p(z|x) = p(z|x̃)p(x̃|x)d x̃, (4.14)
where the spatial extension is modeled by the pdf p(x̃|x) and x̃ is assumed to be
a point source from an extended target with center given by the state vector x.
Hence, a measurement is received from a source x̃ with likelihood p(z|x̃).
Parr (2003), where the sensor not only provides measurements of point observa-
tions, but rather range, bearing and down-range extent. The prime motivation of
the study is to aid track retention for closely spaced moving targets. Furthermore,
the state vector includes the position, velocity and the size of the ellipse. An ekf
is used in Salmond and Parr (2003), but it is concluded that the filter may di-
verge under certain conditions, since the relation between the down-range extent
measurement of the target and the position and velocity coordinates in the state
vector is highly nonlinear. The same problem is studied in Ristic and Salmond
(2004), where a ukf is implemented and tested. Even though the ukf shows bet-
ter performance it is concluded that neither the ekf nor the ukf are suitable for
this problem. The problem is further studied by Angelova and Mihaylova (2008),
where other filter techniques, based on Monte Carlo algorithms, are proposed. In
this paper the size of the ellipse takes values from a set of standard values, i.e.,
the algorithm estimates the type of object from a list, under the assumption that
typical target sizes are known.
In the previous chapter it was shown how single target tracking filters can be
extended and used to handle multiple targets by enclosing the filters with a tar-
get management framework. In this way measurements are associated to targets,
which are tracked as isolated entities. To be able to perform the data association
it is assumed that the number of present targets is known. This is rarely true, and
therefore a track management logic estimated the number of valid and confirmed
tracks. These methods explicitly separate the estimation of the number of targets
and estimation of target states, which is suboptimal. Random finite set (rfs)
formalism introduces a more rigorous approach to the multi target tracking prob-
lem. A set contains the random number of single target tracks, of which each is a
random vector. The state vectors are elements of the rfs and their change in time
is described with a motion model. The overall tracking problem is to compute
the posterior density of the set-valued quantity, which also enables the approach
to describe the uncertainty in the number of objects. The ordering of each single
target state is not of importance in the the set notation; the estimation problem is
reduced to capture the most essential part of the multi target tracking problem,
estimating the number of objects and their individual states.
This chapter is split into three sections, which takes the estimation problem from
a pure theoretical view into a practical implementation. The chapter begins in
Section 5.1 with an introduction to the Bayes formulation of the rfs filter, which
propagates the complete density of the rfs. This approach is not practically im-
plementable, and therefore a solution is to only propagate the first order mo-
ment, called the probability hypothesis density (phd), as described in Section 5.2.
There exist a few practical representations of the phd, of which the Gaussian mix-
ture has turned out to be the most well-used during the last years. The Gaussian
mixture phd filter (gm-phd) is the topic of Section 5.3. This chapter aims at sum-
57
58 5 PHD Filter and Its Implementation
observation space
Zk+1
Zk
state space
Figure 5.1: Illustration of the rfs of states and measurements at time k and
k + 1. Note that this is the same setup as previously shown for the standard
multitarget case in Figure 4.2.
marizing the basic ideas and implementation methods, more details can be found
in the textbook by Mahler (2007a), and other overviews are given by Mahler
(2009b); Challa et al. (2011). Point process theory is described by e.g., Daley
and Vere-Jones (2003); Streit (2010).
The conceptual idea of fisst is to redefine the target set as a single target, a so
called meta target, with multitarget state
X = {x(1) , x(2) , . . . , x(Nx ) }, (5.1)
a so called meta state; and similarly to redefine the observation set
Z = {z(1) , z(2) , . . . , z(Nz ) }, (5.2)
as a single measurement, a meta measurement, of the observed meta targets. The
concept is illustrated in Figure 5.1, where meta targets are shown in the state
space in the lower layer and meta observations in the observation space in the
upper layer. Furthermore, the multitarget multisensor data can be modeled using
a multisensor-multitarget measurement model
Zk = H(Xk ) ∪ Ck , (5.3)
5.1 Introduction to Finite Set Statistics 59
where H(Xk ) is the rfs of measurements originating from the true target and C
is the clutter rfs. To see the similarity, compare this multitarget model with the
single target measurement model (2.1a). The motion of the meta target can be
modeled using a multitarget motion model
Xk+1 = F(Xk ) ∪ Bk (5.4)
where F( · ) models the change of a rfs from time k to k + 1, and B is the rfs
of born targets. Compare, also here, with the single target motion model (2.1b).
Given this the multisensor, multitarget estimation problem can be reformulated
into a single-sensor, single-target problem. The rfs is formally defined in Sec-
tion 5.1.1, followed by a definition of the belief-mass function and multitarget
density function in Section 5.1.2. The multisource multitarget Bayes filter is de-
scribed in Section 5.1.3.
Since the definition may seem a bit abstract it is illustrated with a simple example,
related to target tracking.
5.2 Example: Target Tracking
Consider the target tracking example, which was introduced in Example 1.2. In
the example the state vector represents the Cartesian position of a target, i.e.,
nx = 2. The state space is defined as an Euclidean vector space, i.e., x ∈ R2 . This
state space is the underlying space Y0 in the definition above. The hyperspace
Y includes all finite subsets of Y0 = Rnx . Let the state variable vectors be x(i) ∈
Y0 = R2 for i = 1, . . . , ∞, then some realizations X of the random set X can be
X = ∅ (no targets), X = {x(1) , x(2) } (two targets with states x(1) and x(2) ), or X =
{x(1) , . . . , x(Nx ) } (Nx targets with states x(1) , . . . , x(Nx ) ).
and
δβΨ
pΨ (Y ) =(∅). (5.8)
δY
δ·
R
Here, · δY denotes the set integral, and δY denotes the set derivative. The
definitions of the set integral and the set derivative are too complicated to present
here, the interested reader can consult Mahler (2007a).
These definitions have the following practical use when applied to the likelihood
function and the Markov transition density
• In the single target case the probabilistic-mass function of the sensor model
p(S|x) = Pr(z ∈ S|x) is the probability that the random observation z will
be found in a given region S if the target state is x. Analogously, in the
multitarget case the belief-mass function β(S|X) = Pr(Z ⊆ S|X) is the total
probability that all observations will be found in any given region S, if the
multitarget state is X. In the single target case the likelihood function is
obtained by differentiation of the probabilistic-mass function. The same
concept holds for the multitarget case, i.e., the true multitarget likelihood
function p(Z|X) can, using fisst, be derived from β(S|X) according to
δβk|k (∅|Xk )
pk|k (Zk |Xk ) = (5.9)
δZk
δ
where δZk is the set derivative.
ing p(S|xk ) the Markov transition density pk+1|k (xk+1 |xk ) can be derived in
the single target case. Using fisst the multitarget Markov density can be
derived by taking the set derivative of the belief-mass function
δβk+1|k (∅|Xk )
pk+1|k (Xk+1 |Xk ) = (5.10)
δXk+1
Consider the single target state propagation summarized in Section 4.1. The filter
recursion is extended to the multitarget case under the fisst assumptions in this
section. The single target random state variables x are substituted with the rfs
of a set of targets. Before giving the filter recursion, the interpretation of a set
probability function is discussed. Consider the multitarget state propagation
predictor corrector
· · · → pk|k (Xk |Z1:k ) → pk+1|k (Xk+1 |Z1:k ) → pk+1|k+1 (Xk+1 |Z1:k+1 ) → · · ·
i.e., the set density is not only a function of the state variable values, but also a
function of the number of targets Nx in the set.
The single target Bayes filter equations were stated in (3.13), the multitarget
Bayes filter counterpart has the form
pk (Z1:k |Xk ) · pk|k−1 (Xk |Z1:k−1 )
pk|k (Xk |Z1:k ) = R (5.11a)
pk (Z1:k |Xk ) · pk|k−1 (Xk |Z1:k−1 ) δXk
Z
pk+1|k (Xk+1 |Z1:k ) = pk+1|k (Xk+1 |Xk ) · pk|k (Xk |Z1:k )δXk (5.11b)
where pk (Zk |Xk ) is the multisource likelihood function, pk+1|k (Xk+1 |Xk ) is the
multitarget Markov transition function, pk|k−1 (Xk |Zk−1 ) is the multitarget prior,
pk|k (Xk |Zk ) is the multitarget posterior and pk+1|k (Xk+1 |Zk ) is the multitarget pre-
62 5 PHD Filter and Its Implementation
↑ ↑
compare with the single target filter recursions given on the same form in Sec-
tion 3.2. Note that the motion model describes a union of the set of persisting
targets and the set of new born, or detected, targets. In the same manner, the
measurement model describes a union of the set of target generated observations
and the set of clutter measurement. Here, the measurement set Z is the set of all
observations received by the sensor.
The conclusions of this section can be summarized in a few items, which will be
furher addressed in the next section:
• The Bayesian filter on sets is very similar to standard Bayesian density re-
cursion.
• Related single target densities and operations are replaced with their set
equivalents, compare (5.11) with (3.13).
R
• A set integral · δX is necessary to derive the posterior
Z
p(Xk |Z1:k ) ∝ p(Zk |Xk ) p(Xk |Xk−1 )p(Xk−1 |Z1:k−1 )δXk−1
Based on the same analogy as with the single target tracking the density of the
rfs my be compressed to the first order moments, and these may be propagated
as follows:
predictor corrector
· · · →pk|k (Xk |Z1:k ) → pk+1|k (Xk+1 |Z1:k ) → pk+1|k+1 (Xk+1 |Z1:k+1 )→ · · ·
↓ ↓ ↓
predictor corrector
Dk|k (xk |Z1:k ) → Dk+1|k (xk+1 |Z1:k ) → Dk+1|k+1 (xk+1 |Z1:k+1 )
The first order moment is called a phd and denoted D. However, it is not obvious
what the multitarget counterpart of an expected value is; a naïve defininition
would be
Z
E(Ψ ) = X · pΨ (X)δX, (5.12)
where pΨ (X) is the multitarget probability density of a rfs Ψ . However, this inte-
gral is not mathematically defined, since addition of finite subsets is not usefully
defined. A strategy is to transform subsets X into vectors TX in some vector space.
It is important that this transformation X → TX preserves set-theoretic structures,
i.e., transforming unions into sums TX∪X 0 = TX + TX 0 , whenever X ∩ X 0 = ∅. An
indirect expected value can now be defined according to
Z
E(Ψ ) = TX · pΨ (X)δX. (5.13)
where δy (x) is the Dirac delta function with peak at y. Given these assumptions,
the multitarget analog of the expected value is given by
Z
DΨ (x) = δX (x) · pΨ (X)δX. (5.15)
The expected value is illustrated in Figure 5.2b. Note also that the expected num-
ber of targets in the volume S is
Z
bx = Dk|k (x)dx
N (5.18)
S
In fact one can define the phd using the expected number of Rtargets as follows:
Given any region S of single target state space X0 the integral S Dk|k (x)dx is the
expected number of targets in S.
The phd is an intensity function, which models the joint density over the states.
The phd is multi-modal, with peaks near the actual targets, see Figure 5.3. This
figure shows the phd approximation of the rfs in Figure 5.1. The intensity func-
tion is used in Paper D to represent the density of stationary targets along the
edges of a road. An autonomous driving vehicle should avoid areas with high
intensity and the objective should be to keep the vehicle in the valleys of the
intensity function.
The phd filter consists of two equations, the predictor equation, which extrapo-
lates the current phd to the predicted phd at the time of the new observation,
and the corrector equation, which updates the predicted phd with the new obser-
vations.
The phd predictor equations takes care of the motion of existing targets, birth
and spawn of new targets and the death of existing targets. The components of
the prediction model are summarized below:
5.2 Introduction to the PHD filter 65
10
0
1
1
0.5
0.5
0 0
(a) Sum of Dirac functions δXk
10
0
1
1
0.5
0.5
0 0
(b) Expectation E(δXk )
Figure 5.2: Definition and example of the phd, the Dirac functions repre-
sents the rfs and the surface the first order moment, i.e., the phd.
66 5 PHD Filter and Its Implementation
Figure 5.3: Illustration of the phd for the time steps k and k + 1. This is the
pdf of the rfs in Figure 5.1.
In the table above PS (x) denotes the probability that a target with state x at time k
will survive at time k + 1, p(xk+1 |xk ) is the single target Markov transition density,
b(Xk+1 |xk ) is the phd of targets spawned by other targets with state x, and b(Xk+1 )
is the phd of new appearing targets. The phd predictor equation is given by
Dk+1|k (xk+1 |z1:k ) =
| {z }
time updated PHD
Z h i
= bk+1|k (xk+1 ) + PS (ξk ) p(xk+1 |ξk ) + b(xk+1 |ξk ) Dk|k (ξk |z1:k ) dξk .
| {z } | {z } | {z } | {z } | {z }
target birth PHD probability of Markov transition target spawn by PHD from previous k
survival density existing targets
(5.19)
The parts of the model are illustrated with a number of plots in Figure 5.4. One
example of a phd Dk|k (ξ|z1:k ) from the previous time step k is illustrated in Fig-
ure 5.4a. The magnitude of the phd is reduced a bit when multiplied with the
probability of survival PS (ξ) in Figure 5.4b. Thereafter, multiplying with the
Markov transition density and then integrating changes the mean value and the
covariance, see Figure 5.4c. Note, that all target motions are assumed statistically
independent. In Figure 5.4d, the spawn phd b(xk+1 |ξk ) is added in red, and in
Figure 5.4e the birth phd bk+1|k (xk+1 ) in green. Finally, the total predicted phd
Dk+1|k (xk+1 |z1:k ), after time update, is shown in Figure 5.5a.
5.2 Introduction to the PHD filter 67
0.5 0.5
0.4 0.4
PD Dk−1
0.3 0.3
k−1
D
0.2 0.2
0.1 0.1
0 0
−5 0 5 10 −5 0 5 10
x x
0.5 0.5
∫ (PD p(xk|ξ)+b(xk|ξ) Dk−1 d ξ
0.4 0.4
∫ PD p(xk|ξ)Dk−1 d ξ
0.3 0.3
0.2 0.2
0.1 0.1
0 0
−5 0 5 10 −5 0 5 10
x x
0.5 0.5
∫ (PD p(xk|ξ)+b(xk|ξ) Dk−1 d ξ + b
0.4 0.4
0.3 0.3
Dk|k−1
0.2 0.2
0.1 0.1
0 0
−5 0 5 10 −5 0 5 10
x x
The phd corrector equations takes care of the likelihood of the existing targets,
misdetection of targets and clutter. The components of the prediction model are
summarized below:
model update description
likelihood: p(zk |xk ) xk → zk likelihood that target will gener-
ate observation zk if it has state
xk
misdetection: (1 − PD (xk )) xk → ∅ state dependent probability that
target will not generate an obser-
vation
clutter: c(Zk ) ∅ → Zk likelihood that a set Zk =
(1) (M)
{zk , . . . , zk } of clutter observa-
tions will be generated
In the table above PD (xk ) is the probability of detection of a target with the state
x at time step k, p(zk |xk ) is the single target likelihood function and c(Zk ) is the
density of Poisson false alarms, due to clutter. The modeling is done under the
assumption that the observations and the clutter are statistically independent.
Furthermore it is assumed that the multitarget prediction is approximately Pois-
(1) (M)
son. Given a new scan of data Zk = {zk , . . . , zk } the corrector equation is given
by
X Λk|k (x|z)
Dk|k (x|Z1:k ) ≈ R + (1 − PD (x)) Dk|k−1 (x|Z1:k−1 ) (5.20)
| {z } z∈Zk λk ck (z) + Λk|k (x|z)dx | {z }
updated PHD | {z } predicted PHD
pseudo-likelihood
0.5 0.5
0.4 0.4
(1−PD)Dk|k−1
0.3 0.3
k|k−1
D
0.2 0.2
0.1 0.1
0 0
−5 0 5 10 −5 0 5 10
x x
0.5 0.5
0.4 0.4
Σ Dk|k(x|z)
0.3
p(z|x)
0.3
0.2 0.2
0.1 0.1
0 0
−5 0 5 10 −5 0 5 10
x x
(c) likelihood functions of two measure- (d) Detected and non-detected targets
ments
0.5
0.4
0.3
Dk
0.2
0.1
0
−5 0 5 10
x
Figure 5.5: Steps in the phd update and corrector equations (5.20).
70 5 PHD Filter and Its Implementation
the present chapter, and it is also not used in any of the publications in Part II.
Details about the cphd filter can be found in Mahler (2007b,a), and a Gaussian
mixture implementation is described in Vo et al. (2007).
The standard phd filter as described in this section does not maintain track labels
from time step to time step. A so called peak to track association technique has
been proposed by Lin et al. (2004); Panta et al. (2004) in order to maintain track
labels.
Furthermore, phd smoother has been studied in Mahler et al. (2010); Clark (2010),
and a Gaussian mixture implementation is presented by Vo et al. (2010, 2011).
Again, since the smoother is not further used in Part II, it is also not described
here.
The so called intensity filter, developed by Streit, is another generalization of the
phd filter. The difference is that in the phd filter certain prior assumptions re-
garding target birth and measurement clutter are made. More specifically the
intensity filter uses an augmented single target state space, while the phd filter
uses only the standard single target state space. The augmented state space rep-
resents the absent target hypothesis, and it therefore allows the filter to on-line
estimate the intensities of the target birth and measurement clutter Poisson point
processes. Note that the phd is an intensity function, and in the phd filter the
birth and clutter intensities are known a priori. A thorough description of the
intensity filter is given in the textbook by Streit (2010) and a summary is given in
the publications Streit and Stone (2008); Streit (2008).
0.7 0.7
0.6 0.6
0.5 0.5
0.4 0.4
Dk
Dk
0.3 0.3
0.2 0.2
0.1 0.1
0 0
−5 −4 −3 −2 −1 0 1 2 3 4 5 −5 −4 −3 −2 −1 0 1 2 3 4 5
state space state space
(a) Sequential Monte Carlo phd approx- (b) Gaussian mixture phd approxima-
imations (smc-phd) tion (gm-phd)
↓ ↓ ↓
PJk|k (i)
(i) (i)
PJk+1|k (i)
(i) (i)
PJk+1|k+1 (i)
(i) (i)
··· → w N x; µ , P → w N x; µ ,P → w N x; µ ,P
i=1 k|k k|k k|k i=1 k+1|k k+1|k k+1|k i=1 k+1|k+1 k+1|k+1 k+1|k+1
↓ ↓ ↓
The phd is represented by a Gaussian mixture and the summary statistics of the
Gaussian components, i.e., the mean value µ and the covariance P are propagated
together with a weight w for each Gaussian component. The number of Gaussian
components at each time step is denoted J. The prior, predicted and posterior
gm-phd are shown above.
When deriving the gm-phd filter some assumptions are made, see Vo and Ma
(2006). Since these assumptions are formally repeated in Paper E, on Page 230,
72 5 PHD Filter and Its Implementation
these are only summarized here. It is assumed that each target follows a linear
Gaussian motion model,
pk+1|k (xk+1 |xk ) = N (xk+1 ; Fk xk , Qk ), (5.22)
where Fk is the state transition matrix and Qk is the process noise covariance, and
it is assumed that all target motions are statistically independent. Observations
and clutter are assumed statistically independent and the sensor is assumed to
have a linear Gaussian measurement model, i.e.,
pk|k (zk |xk ) = N (zk ; Hk xk , Rk ), (5.23)
where Hk is the measurement model matrix and Rk is the observation noise co-
variance. Furthermore it is assumed that the survival and detection probabilities
are state independent, i.e., PS (x) = PS and PD (x) = PD . The phd of the birth and
the spawn are Gaussian mixtures
Jb,k
(i) (i) (i)
X
b(Xk+1 ) = wb,k N (x; µb,k , Pb,k ), (5.24)
i=1
Jβ,k+1
(i) (`) (i,`) (i,`)
X
b(Xk+1 |xk ) = wβ,k+1 N (x; µβ,k+1|k , Pβ,k+1|k ), (5.25)
`=1
(i) (i) (i)
where wb,k , µb,k and Pb,k are the weight, the mean and the covariance of the ith
born component, i = 1, . . . , Jb,k , and Jb,k is the number of components. Further,
(`) (i,`) (i,`)
wβ,k+1 , µβ,k+1|k and Pβ,k+1|k are the weight, mean and covariance of the `th com-
ponent ` = 1, . . . , Jβ,k+1 at time k + 1 spawned from the ith component at time k,
and Jβ,k+1 is the total number of components spawned from component i. It is
also assumed that the predicted multitarget rfs are Poisson.
In this section the gm-phd filter algorithm including the predictor and the cor-
rector equations, are given. The prediction equation is an approximation of the
general phd prediction equation (5.19), with the difference that the phd compo-
nents are substituted with Gaussian mixtures according to
Jb,k Jk−1
(j) (j) (j) (j) (j) (j)
X X
Dk|k−1 (x|Z1:k−1 ) = wb,k N (x; µb,k , Pb,k ) + PS wk−1 N (x; µk|k−1 , Pk|k−1 )
j=1 j=1
Jβ,k
Jk−1 X
(j,`) (j,`) (j,`)
X
+ wβ,k|k−1 N (x; µβ,k|k−1 , Pβ,k|k−1 ). (5.26)
j=1 `=1
In the case when the motion and sensor models are linear, the Gaussian compo-
nents can be predicted using the prediction step of the Kalman filter (3.16). The
illustration in Figure 5.4 still holds for this Gaussian case, and the discussion is
therefore not repeated again. The corrector equation is an approximation of the
5.3 Gaussian Mixture Implementation 73
general phd corrector equation (5.20), with the difference that the phd compo-
nents are substituted with Gaussian mixtures according to
JX
k|k−1 Nz JX
X k|k−1
(i) (i) (i) (i,j) (i,j) (i,j)
Dk|k (x|Z1:k ) ≈ wk|k N µk|k , Pk|k + wk|k N µk|k , Pk|k (5.27)
i=1 j=1 i=1
| {z } | {z }
not detected targets detected targets
To allow for nonlinear motion and sensor models, the ekf or ukf can be utilized,
in that case the prediction and update of the single Gaussian components are in-
stead performed as described in Algorithm 4 and 5, respectively. The ukf version
of the gm-phd filter is used in Paper D to track the edges of a road and thereby
to create an intensity map of the environment. An extension of the kf based
gm-phd used to track extended targets, is presented Paper E. In that paper mod-
ifications are made to the update step to account for the extended targets, which
may give rise to more than one measurement per target and time step. In Paper F
the gm-phd filter is used as an inner core in a tracking filter which aims at esti-
mating the size and shape of targets. The outer shell of the approach represents
the position and motion of the target, whereas the phd is defined on the surface
of the target as a means to estimate its shape.
than some threshold, see Algorithm 9. An advantage with the phd filter is that
a hard decision, i.e., extraction of targets, is only performed for obtaining an out-
put from the filter at each time step. The extracted targets are not used within the
filter; the information about the intensity of targets remains in the filter without
the need to make hard decisions, which would destroy information.
76 5 PHD Filter and Its Implementation
6.1 Conclusion
The work presented in this thesis has dealt with the problem of estimating the
motion and parameters of a vehicle, as well as representing and estimating its
surroundings. In this context the surroundings consist of other vehicles, station-
ary objects, and the road. Here, a major part of the work is not only the estima-
tion problem itself, but also the way in which to represent the environment, i.e.,
building maps of stationary objects and describing the size of other vehicles.
The second part of the thesis begins in Paper A with an overview of mapping
techniques used to describe a road and its closer environment. Four different
types of mapping philosophies are described; beginning with so called feature
based maps, where each element of the map both described the properties and
location of the specific map-element. In location based maps each map-element
already corresponds to a certain location and the value of the element describes
only the properties in that position. Hence, feature based maps are usually rather
sparse. Furthermore, road maps and intensity based maps are also summarized.
The intensity based map is the main topic of paper D.
Paper B is concerned with estimating the lane geometry. The lane markings are
described by a polynomial and the coefficients are the states to estimate. This
77
78 6 Concluding Remarks
problem can be solved with a camera and computer vision, but by fusing the
data obtained from the image processing with information about the ego vehi-
cle’s motion and the other vehicles’ movement on the road, the road geometry
estimate can be improved. The other vehicles are tracked primarily by using
measurements from a radar. The motion of the ego vehicle is estimated by com-
bining measurements from the vehicle’s imu, steering wheel angle sensor and
wheel velocity sensors in a model based filter. The model is in this case the so
called single track model or bicycle model.
Paper C and D both deal with the problems of estimating and representing sta-
tionary objects along the edges of a road. Paper C, associates the radar measure-
ments to extended stationary objects in the form of curved lines and tracks these
lines as extended targets. The lines are modeled as polynomials and one novelty
in this paper is that the approach leads to a so called errors in variables problem
when noisy point measurements are associated to polynomials. The standard ap-
proach is to assume that the measurements are only noisy in one direction when
associated to a line, here however noise is assumed to be present in all directions.
This assumption is of course more realistic and the results are more accurate.
Paper D describes a new type of map, the intensity based map. In this paper the
environment, i.e., the stationary objects, is represented by an intensity function
or probability hypothesis density (phd) as it is also called. The intensity function
is described by a Gaussian mixture. This makes the representation very sparse,
since only a number of sufficient statistics must be tracked, but also very rich
since the extension of the Gaussian components can cover and model larger areas.
It is shown how prior knowledge of the road construction can be used to both
improve the update of the filter and to simplify the map representation.
Paper E and F deal with the tracking of extended moving targets. In Paper E the
target is still modeled as a point target, however, it allows for obtaining more than
one measurement per target. A modification of the pseudo-likelihood function
used in the update step of the so called phd filter is presented. In the standard
filter one measurement can only be obtained from each target per time step. The
novelty of the paper is the practical implementation of the pseudo-likelihood
function and partitioning of the measurement data. In a number of simulations
and experiments the advantages of the modifications are shown. A drawback is
that the wrong number of targets is estimated in some rare cases, this is further
discussed in the next section outlining some possible directions of future work.
In Paper F, the size and the shape of an extended target are also estimated. It
is still assumed that the sensor obtains a number of point measurements. In or-
der to associate the point measurements to the shaped target it is assumed that
the measurements have been produced by a number of measurement generating
points on the surface of the target. The measurement generating points are repre-
sented by a random finite set and these are only used as a means to estimate the
size and the shape of the target. Only one simple simulation example is shown
and also here future work will cover more situations.
6.2 Future Research 79
The last paper, Paper G, aims at estimating the wheel radii of a vehicle. This is
made under the assumption that a change in the wheel radii is related to a change
in tire pressure, and that tire pressure losses can be detected using this approach.
The proposed method is only based on measurements from the wheel speed sen-
sors and the gps position information. The wheel radii are represented with noise
parameters in the state space model. The novelty lies in a Bayesian approach to
estimate these time-varying noise parameters on-line using a marginalized parti-
cle filter. Experimental results of the proposed approach show many advantages,
both regarding the accuracy and the reduced computational complexity, when it
is compared with other methods.
The approaches in Papers A-D, and G have been evaluated on real data from both
freeways and rural roads in Sweden. In Paper E data of moving pedestrians has
been used. Of the seven publications in Part II six are journal papers and one is
a peer-reviewed conference paper. Five of the papers are published and two are
still under review.
the ones used in this thesis. A very interesting avenue for future work is to com-
bine the ideas presented in this thesis with information from a camera about the
height differences on the road side within a sensor fusion framework. This would
probably improve the estimates, especially in situations when there are too few
radar measurements available.
Bibliography
A. Abdulle and G. Wanner. 200 years of least squares method. Elemente der
Mathematik, 57:45–60, May 2002.
D. Angelova and L. Mihaylova. Extended object tracking using Monte Carlo meth-
ods. IEEE Transactions on Signal Processing, 56(2):825–832, February 2008.
81
82 Bibliography
F. Bengtsson and L. Danielsson. Designing a real time sensor data fusion system
with application to automotive safety. In Proceedings of the World Congress
on Intelligent Transportation Systems and Services, New York, USA, November
2008.
D. P. Bertsekas. The auction algorithm for assignment and other network flow
problem: a tutorial. Interfaces, 20(4):133–149, July 1990.
M. Bühren and B. Yang. Simulation of automotive radar target lists using a novel
approach of object representation. In Proceedings of the IEEE Intelligent Vehi-
cles Symposium, pages 314–319, Tokyo, Japan, 2006.
S. J. Julier and J. K. Uhlmann. New extension of the Kalman filter to nonlinear sys-
tems. In Signal Processing, Sensor Fusion, and Target Recognition VI, volume
3068, pages 182–193, Orlando, FL, USA, 1997. SPIE.
S. J. Julier and J. K. Uhlmann. Reduced sigma point filters for the propagation of
means and covariances through nonlinear transformations. In Proceedings of
the American Control Conference, volume 2, pages 887–892, 2002.
T. Kailath. Linear systems. Prentice Hall, Englewood Cliffs, NJ, USA, 1980.
L. Ljung. System identification, Theory for the user. System sciences series. Pren-
tice Hall, Upper Saddle River, NJ, USA, 2 edition, 1999.
Bibliography 87
C. Lundquist and R. Großheim. Method and device for determining steering an-
gle information. German Patent Application DE 10 2007 000 958 Mai 14, 2009,
International Patent Application WO 2009 047 020 April 16, 2009 and Euro-
pean Patent Application EP 2205478 April 16, 2009, Priority date October 2,
2007.
C. Lundquist and W. Reinelt. Back driving assistant for passenger cars with
trailer. In Proceedings of the SAE World Congress, SAE paper 2006-01-0940,
Detroit, MI, USA, April 2006a.
R. P. S. Mahler, B.-N. Vo, and B.-T. Vo. The forward-backward probability hy-
pothesis density smoother. In Proceedings of the International Conference on
Information Fusion, pages 1–8, Edinburgh, UK, July 2010.
S. Malinen, C. Lundquist, and W. Reinelt. Fault detection of a steering wheel
sensor signal in an active front steering system. In Preprints of the IFAC Sym-
posium on SAFEPROCESS, pages 547–552, Beijing, China, August 2006.
M. Mitschke and H. Wallentowitz. Dynamik der Kraftfahrzeuge. Springer, Berlin,
Heidelberg, 4 edition, 2004.
E. Nilsson, C. Lundquist, T. B. Schön, D. Forslund, and J. Roll. Vehicle motion
estimation using an infrared camera. In Proceedings of the World Congress of
the International Federation of Automatic Control, Milan, Italy, August 2011.
U. Orguner, C. Lundquist, and K. Granström. Extended target tracking with a
cardinalized probability hypothesis density filter. In Proceedings of the In-
ternational Conference on Information Fusion, pages 65–72, Chicago, IL, USA,
July 2011.
E. Özkan, C. Lundquist, and F. Gustafsson. A Bayesian approach to jointly esti-
mate tire radii and vehicle trajectory. In Proceedings of the IEEE Conference
on Intelligent Transportation Systems, Washington DC, USA, October 2011.
K. Panta, B.-N. Vo, S. Singh, and A. Doucet. Probability hypothesis density filter
versus multiple hypothesis tracking. In Signal Processing, Sensor Fusion, and
Target Recognition XIII, volume 5429, pages 284–295, Orlando, FL, USA, 2004.
SPIE.
R. Rajamani. Vehicle Dynamics and Control. Springer, Boston, MA, USA, 2006.
ISBN 978-0-387-28823-9.
G. Reimann and C. Lundquist. Method for operating electronically controlled
servo steering system of motor vehicle, involves determining steering wheel
angle as measure for desired steering handle angle by steering handle for steer-
ing wheels of motor vehicle. German Patent Application DE 102006053029
May 15, 2008, Priority date November 10, 2006.
W. Reinelt and C. Lundquist. Observer based sensor monitoring in an active front
steering system using explicit sensor failure modeling. In Proceedings of the
IFAC World Congress, Prague, Czech Republic, July 2005.
W. Reinelt and C. Lundquist. Mechatronische Lenksysteme: Modellbildung und
Funktionalität des Active Front Steering. In R. Isermann, editor, Fahrdy-
namik Regelung - Modellbildung, Fahrassistenzsysteme, Mechatronik, pages
213–236. Vieweg Verlag, September 2006a.
W. Reinelt and C. Lundquist. Controllability of active steering system hazards:
From standards to driving tests. In Juan R. Pimintel, editor, Safety Critical
Automotive Systems, pages 173–178. SAE International, 400 Commonwealth
Drive, Warrendale, PA, USA, August 2006b.
90 Bibliography
W. Reinelt and C. Lundquist. Method for assisting the driver of a motor vehicle
with a trailer when reversing. German Patent DE 10 2006 002 294 February 24,
2011, European Patent Application EP 1810913 July 25, 2007 and Japanese
Patent Application JP 2007191143 August 2, 2007, Priority date January 18,
2006.
B.-N. Vo, B.-T. Vo, and R. P. S. Mahler. A closed form solution to the probability
hypothesis density smoother. In Proceedings of the International Conference
on Information Fusion, pages 1–8, Edinburgh, UK, July 2010.
B.-N. Vo, B.-T. Vo, and R. P. S. Mahler. Closed form solutions to forward-backward
smoothing. IEEE Transactions on Signal Processing, 2011. doi: 10.1109/TSP.
2011.2168519.
B.-T. Vo, B.-N. Vo, and A. Cantoni. Analytic implementations of the cardinalized
probability hypothesis density filter. IEEE Transactions on Signal Processing,
55(7):3553–3567, July 2007.
N. Wahlström, J. Callmer, and F. Gustafsson. Single target tracking using vector
magnetometers. In IEEE Conference on Acoustics, Speech and Signal Process-
ing, pages 4332–4335, Prague, Czech Republic, May 2011.
A. Wald. Sequential tests of statistical hypotheses. The Annals of Mathematical
Statistics, 16(2):117–186, June 1945.
M. J. Waxman and O. E. Drummond. A bibliography of cluster (group) tracking.
In Proceedings of Signal and Data Processing of Small Targets, volume 5428,
pages 551–560, Orlando, FL, USA, April 2004. SPIE.
M. Wieneke and S. J. Davey. Histogram PMHT with target extent estimates based
on random matrices. In Proceedings of the International Conference on Infor-
mation Fusion, pages 1–8, Chicago, IL, USA, July 2011.
J. Y. Wong. Theory Of Ground Vehicles. John Wiley & Sons, New York, USA, 3
edition, 2001.
T. Zajic and R. P. S. Mahler. Particle-systems implementation of the PHD
multitarget-tracking filter. In Signal Processing, Sensor Fusion, and Target
Recognition XII, volume 5096, pages 291–299, Orlando, FL, USA, April 2003.
SPIE.
Z. Zomotor and U. Franke. Sensor fusion for improved vision based lane recogni-
tion and object tracking with range-finders. In Proceedings of the IEEE Confer-
ence on Intelligent Transportation Systems, pages 595–600, Boston, MA, USA,
November 1997.
Part II
Publications
Paper A
Situational Awareness and Road
Prediction for Trajectory Control
Applications
Abstract
This chapter is concerned with the problem of estimating a map of
the immediate surroundings of a vehicle as it moves. In order to com-
pute these map estimates sensor measurements from radars, lasers
and/or cameras are used together with the standard proprioceptive
sensors present in a car. Four different types of maps are discussed.
Feature based maps are represented by a set of salient features. Road
maps make use of the fact that roads are highly structured, since they
are built according to clearly specified road construction standards,
which allows relatively simple and powerful models of the road to
be employed. Location based maps, where occupancy grid maps be-
long and finally intensity based maps, which can be viewed as a con-
tinuous version of the location based maps. The aim is to provide a
self-contained presentation of how these maps can be built from mea-
surements. Real data from Swedish roads are used throughout the
chapter to illustrate the methods introduced.
1 Introduction
Most automotive original equipment manufacturers today offer longitudinal con-
trol systems, such as adaptive cruise control (acc) or collision mitigation systems.
Lateral control systems, such as lane keeping assistance (lka), emergency lane as-
sist (ela) (Eidehall et al., 2007) and curve speed warning, are currently developed
and released. These systems can roughly be split into safety applications, which
aim to mitigate vehicular collisions such as rear end or blind spot detection; and
comfort applications such as acc and lka, which aim at reducing the driver’s
work load. The overview article by Caveney (2010) describes the current devel-
opment of trajectory control systems. The requirements on the position accuracy
of the ego vehicle in relation to other vehicles, the road and the surrounding
environment increases with those control applications that are currently under
development and expected to be introduced to the market.
99
100 Paper A Situational Awareness and Road Prediction for Trajectory Control App.
The systems available or in development today are based on two basic tracking
and decision principles: longitudinal systems use a radar, possibly supported
by a camera, to track leading vehicles and they decide on braking warnings or
interventions. On the other hand, lateral systems use a camera to track the lane
markers and they decide on steering warnings or interventions. Future safety and
comfort functions need more sophisticated situational awareness and decision
functionality:
• A combination of lateral and longitudinal awareness will be needed, where
all lanes are monitored, all of their vehicles are tracked, and the road-side
conditions are modeled to allow for emergency maneuvers. The result is a
situational awareness map, which is the topic for this chapter.
• This will allow for more sophisticated decision functionality. First, the pos-
sible evasive driver maneuvers are computed, and only if the driver has no
or very little time for evasive actions, the system will intervene. Second,
more complex automatic evasive maneuvers can be planned using the situ-
ational awareness map, including consecutive lateral and braking actions.
It should be remarked that the accuracy of the navigation systems today and in
the near future, see Chapters “In-car Navigation Basics" and “The evolution of
in-car navigation systems", are not of much assistance for situational awareness.
The reason is that satellite based navigation gives an accuracy of 10-20 meters,
which is not sufficient for lateral awareness. Even in future systems, including
reference base stations, enabling meter accuracy, the standard road maps will
limit the performance since they are not of sufficient accuracy. Thus, two leaps in
development are needed before positioning information and standard maps can
be used to improve situational awareness maps. Another technical enabler is car
to car communication (c2c), which may improve tracking of other vehicles and
in the end change the transportation system as has already been done with the
transponder systems for aircraft and commercial surface ships. Still, there will al-
ways be vehicles and obstacles without functioning communication systems. The
need for accurate situation awareness and road prediction to be able to automat-
ically position the car in a lane and derive drivable trajectories will evolve and
remain important.
The different types of situation awareness maps used to represent the environ-
ment are introduced in Section 2. Details of these maps are presented in Sec-
tions 3 to 6. The chapter is concluded in Section 7.
The state variable of the targets at time k is denoted xT,k . The road and the en-
vironment may be modeled by a map, which is represented by a set of variables
describing Nm landmarks in the environment according to
n o
Mk = m(1)k , m
(2)
k , . . . , m
(Nm )
k
. (1)
According to Thrun et al. (2005), there exists primarily two types of indexing for
probabilistic maps. In a feature based map each m(n) specifies the properties and
location of one object, whereas in a location based map the index n corresponds
to a location and m(n) is the property of that specific coordinate. The occupancy
grid map is a classical location based representation of a map, where each cell
of the grid is assigned a binary occupancy value that specifies if the location n is
occupied (m(n) = 1) or not (m(n) = 0), see e.g., Elfes (1987); Moravec (1988).
The ego vehicle perceives information about the other vehicles and the environ-
ment trough its sensors. The sensors provide a set of noisy measurements
n o
Zk = z(1) , z(2) , . . . , z(Nz,k ) (2)
k k k
at each discrete time instant k = 1, . . . , K. Common sensors used for automotive
navigation and mapping measure either range and bearing angle, as for exam-
ple radar and laser, or bearing and elevation angles, as for the case of a camera.
A signal preprocessing is always included in automotive radar sensors and the
sensor provides a list of detected features, defined by the range r, range rate ṙ
and bearing ψ. The preprocessing, the waveform design and the detection algo-
rithms of the radar is well described by e.g., Rohling and Möller (2008); Rohling
and Meinecke (2001). Laser sensors typically obtain one range measurement per
beam, and there exists both sensors which emit several beams at different angles
and those which have a rotating beam deflection system. They all have in com-
mon that the angles at which they measure range are quantized, thus providing
a list of range and bearings of which only the ones which are less than the max-
imum range shall be considered. Another commonly used automotive sensor is
the camera. The camera measurements are quantized and the data is represented
in a pixel matrix as an image.
Note that the indexing of sensor data is analogous to the representation of maps.
Each range and bearing measurement z(n) from a radar or laser specifies the prop-
erties and location of one observation, i.e., it is a feature based measurement.
However, the indexing of camera measurement is location based, since the index
n corresponds to a pixel in the image and z(n) is the property of that specific
coordinate.
Road map This is a special case of the feature based map, where the map vari-
ables model the geometry of the road. Roads are highly structured; they
are built according to road construction standards and contain primarily,
straight lines, curves and clothoids. Maps of road lanes and edges are de-
scribed in Section 4.
Location based map One of the most well established location based map is the
occupancy grid map, which is described in Section 5. The map is defined
over a continuous space, but discretized with a grid approximation.
Intensity based map The intensity density may be interpreted as the probability
that one object is located in an infinitesimal region of the state space. The
intensity based map is a continuous approximation of a location based map
and it is described in Section 6.
The estimated maps can be used to increase the localization accuracy of the ego
vehicle with respect to its local environment. Furthermore, the maps may be used
to derive a trajectory, which enables a collision free path of the vehicle.
3 Feature Based Map 103
The feature based approach may together with existing road maps be used to sup-
plement the gps-based position of the vehicle. This approach is also commonly
referred to as visual odometry, see e.g., Nistér et al. (2006).
where c(j) is the position of the camera expressed in world coordinates at the
time when landmark j was first seen, ψ (j) is the azimuth angle of the landmark
as seen from c(j) , relative to the world coordinate frame. The elevation angle of
the landmark as seen from c(j) , relative to world coordinate frame directions is
denoted φ(j) , and the inverse depth, which is the inverse of the distance, from c(j)
to the landmark is denoted ρ(j) .
19
20 16
3
24
21
15
(a)
10
5
15
0 20
21
y [m]
−5 19
16 3
−10
−15 24
−20
0 10 20 30 40 50 60 70 80 90 100
x [m]
(b)
10
1920
5 16
z [m]
3
24
0 15 21
−5
0 10 20 30 40 50 60 70 80 90 100
x [m]
(c)
Figure 1: Features detected using the Harris corner detector are shown in
Figure (a). Figure (b) and (c) shows the estimated position of the landmarks
in the x − y and x − z plane, respectively.
where Pn (pC,(j) ) is used to denote the normalized pinhole projection and pC,(j) =
106 Paper A Situational Awareness and Road Prediction for Trajectory Control App.
y
z
x
1 q c̄k
d= ρ c̄k − c
c y
x W
z
Figure 2: The inverse depth parameterization used for the landmarks. The
position of the landmark p is parameterized using the position c of the cam-
era the first time the feature was seen, the direction q(φ, ψ) and the inverse
depth ρ. The position of the camera at time step k is denoted c̄k .
C,(j) T
h i
C,(j) C,(j)
xp yp zp denotes the position of feature j at time k in the camera
coordinate frame C. Note that before an image position can be used as a mea-
surement together with the measurement equation (11), the image position is
adjusted according to the camera specific parameters, such h as ifocal
T
length, pixel
sizes, etc. The transformation
h iT between pixel coordinates u v and normalized
camera coordinates y z , which is the kind of coordinates landmark measure-
ments z(i) (see (11)) are given in, is
" # u−uic
y f
= u ic , (12)
z v−v
fv
h iT
where uic vic denotes the image center, and fu and fv are the focal lengths
(given in pixels) in the lateral u-direction and the vertical v-direction, respec-
tively. The transformation between world and camera coordinates is given by
" #! ! !
C,(j) CE EW (j) x 1 (j) E
p =R R c − E + (j) q −c , (13a)
yE ρ
RCE = R(ψ C , φC , γ C ), (13b)
EW
R = R(ψE , φE , γE ), (13c)
where cE denotes the position of the camera expressed in the ego vehicle body
coordinate frame. The rotation matrix R(α, β, γ) transforms coordinates from
coordinate frame B to coordinate frame A, where the orientation of B relative to
A is ψ (yaw), φ (pitch) and γ (roll). Furthermore, ψ C , φC and γ C are the constant
4 Road Map 107
yaw, pitch and roll angles of the camera, relative to the vehicle body coordinate
frame.
The landmarks are estimated recursively using e.g., a Kalman filter. An example
of estimated landmarks is shown in Figure 1. The estimated position p(j) for
seven landmarks is shown in the image plane, as well as in the world x − y and
x − z plane, where the ego vehicle is in origin.
4 Road Map
A road map describe the shape of the road. The roads are mainly modeled using
polynomial functions which describe the lane and the road edges. The advan-
tages of road models are that they require sparse memory and are still very accu-
rate, since they do not suffer from discretization problems. General road models
are presented in Section 4.1. Lane estimation using camera measurements is de-
scribed in Section 4.2 and finally road edge estimation based on feature measure-
ments is described in Section 4.3.
A road consists of straight and curved segments with constant radius and of vary-
ing length. The sections are connected through transition curves, so that the
driver can use smooth and constant steering wheel movements instead of step-
wise changes when passing through road segments. More specifically, this means
that a transition curve is formed as a clothoid, whose curvature c changes linearly
with its curve length xc according to
c(xc ) = c0 + c1 · xc . (14)
Note that the curvature c is the inverse of the radius. Now, suppose xc is fixed
to the ego vehicle, i.e., xc = 0 at the position of the ego vehicle. When driving
along the road and passing through different road segments c0 and c1 will not be
constant, but rather time varying state variables
" # " #
c0 curvature at the ego vehicle
m= = . (15)
c1 curvature derivative
In section 3 the map features were expressed in a fixed world coordinate frame.
However, note that in this section the road map is expressed as seen from the mov-
ing ego vehicle. Using (14), a change in curvature at the position of the vehicle is
108 Paper A Situational Awareness and Road Prediction for Trajectory Control App.
given by
dc(xc ) dc0 dxc
= ċ0 = · = c1 · v, (16)
dt xc =0 dxc dt
where v is the ego vehicle’s velocity. Furthermore, the process model is given by
" # " #" # " #
ċ0 0 vx c0 0
= + . (17)
ċ1 0 0 c1 wc1
This model is referred to as the simple clothoid model and it is driven by the
process noise wc1 . Note that the road is modeled in a road aligned coordinate
frame, with the components (xc , yc ), and the origin at the position of the ego
vehicle. There are several advantages of using road aligned coordinate frames,
especially when it comes to the process models of the other vehicles on the same
road, these models are greatly simplified in road aligned coordinates. However,
the flexibility of the process model is reduced and basic dynamic relations such
as Newton’s and Euler’s laws cannot be directly applied. The road model (14) is
transformed into Cartesian coordinates (x, y) using
Zxc
x(xc ) = cos (χ(x))dx ≈ xc , (18a)
0
Zxc
c0 2 c1 3
y(xc ) = sin (χ(x))dx ≈ x + xc , (18b)
2 c 6
0
where the heading angle χ is defined as
Zx
c1 2
χ(x) = c(λ)dλ = c0 x + x . (18c)
2
0
The origin of the two frames is fixed to the ego vehicle, hence, integration con-
stants (x0 , y0 ) are omitted.
A problem appears when two or more clothoid segments, with different param-
eters c0 and c1 , are observed in the same camera view. The parameter c0 will
change continuously during driving, whereas c1 will be constant in each segment
and change stepwise at the segment transition. This leads to a dirac impulse in
ċ1 at the transition. The problem can be solved by assuming a high process noise
wc1 in (17), but this leads to less precise estimates of the state variables when no
segment transitions occur in the camera view. To solve this problem an averag-
ing curvature model was proposed by Dickmanns (1988), which is perhaps best
described with an example. Assume that the ego vehicle is driving on a straight
road (i.e., c0 = c1 = 0) and that the look ahead distance of the camera is x̄c . A new
segment begins at the position x0c < x̄c , which means that there is a step in c1 , and
c0 is ramped up, see Figure 3. The penetration into the next segment is lc = x̄c − x0c .
The idea of this model, referred to as averaging or spread-out dynamic curvature
model , with the new state variables c0m and c1m , is that it generates the true
4 Road Map 109
c1 real road
xc
c0 real road
xc
y real road
model
y(ȳc )
x
lc
x0c x̄c
Figure 3: A straight and a curved road segment are modeled with the aver-
aging road model. The two upper plots show the parameters c1 and c0 of
the real road, the bottom plot shows the real and the modeled roads in a
Cartesian coordinate frame.
is obtained by inserting (20) and (21) into (19). By differentiating (22) with re-
dc0m (lc ) d( · ) d( · ) dt
spect to lc and using the relations dc 1
dlc = 0, dlc = c1m (lc ) and dl = dt · dl
c c
the following equation is obtained
v
ċ1m = 3 (c1 (lc / x̄c )2 − c1m ), (23)
x̄c
for lc < x̄c . Since (lc / x̄c )2 is unknown it is usually set to 1 (Dickmanns, 2007),
which finally yields
v
ċ1m = 3 (c1 − c1m ). (24)
x̄c
The state variable vector of the averaging model is defined as
c0m curvature at the ego vehicle
m = c1m = averaged curvature derivative , (25)
c1 c derivative of the foremost segment
and the process model is given by augmenting the simple clothoid model (17)
with (24) according to
ċ0m 0 v 0 c0m 0
ċ1m = 0 −3 x̄v 3 x̄v c1m + 0 .
(26)
c c
ċ1 c wc1
0 0 0 1
The model is driven by the process noise wc1 , which also influences the other
states. The averaging model is well described in the recent textbook Dickmanns
(2007) and some early results using the model are presented by e.g., Dickmanns
and Mysliwetz (1992).
The lane tracking problem then makes use of the detected lanes together with
information about the temporal and the spatial dependencies over time in order
to compute lane estimates. These dependencies are mathematically described us-
ing a road model. Traditionally, lane tracking is done using an extended Kalman
filter, see e.g., Dickmanns and Mysliwetz (1992); Guiducci (1999). There are also
interesting approaches based on the particle filter (pf) by Gordon et al. (1993)
available, see e.g., Zhou et al. (2006); Wang et al. (2008); Kim (2008).
The lane is here modeled in the image plane (cf. Section 3.2) as a linear function
close to the ego vehicle and as a quadratic function far away, i.e.,
a + b(v − vs ) v > vs
lθ (v) = (27a)
a + b(v − vs ) + c(v − vs )2 v ≤ vs ,
where vs denotes the (known) vertical separation in pixels between the linear and
the quadratic model (illustrated by the horizontal line in Figure 4) and subindex
θ is used to denote the dependence on the parameters
h iT
θ= a b c , (27b)
which are to be estimates. These parameters all have geometrical interpretations
in terms of offset (a), local orientation (b) and curvature (c) of the lane in the im-
age plane. The lane estimates (here, the estimates of the parameters θ in (27))
carry important information about the states in the road model introduced in
Section 4.1, which are expressed in world coordinates (in contrast to pixel coordi-
nates u, v). These road model states are typically what we are interested in and
we will return to this important connection at the end of this section.
Given the fact that the problem of lane detection has been studied for more than
25 year there are many ideas on how to solve this problem available. Rather than
trying to give a complete account of all the different methods available, we will
here be very specific and explain one way in which lanes can be detected and
show some results on real sequences. The solution presented here is very much
along the lines of Jung and Kelber (2005); Lee (2002).
The initial lane detection is performed using a linear lane model, which is found
from the image using a combination of the edge distribution function (EDF) (Lee,
2002) and the Hough transform (Hough, 1962; Duda and Hart, 1972). The EDF
is defined as the gradient orientation
!
Du
ϕ(u, v) = arctan , (28)
Dv
where Du and Dv are approximations of the gradient function
∂I T ≈ D
h i h iT
∂I
∇I(u, v) = ∂u ∂v u Dv (29)
for the gray scale image I(u, v). The two largest peaks (α l , α r ,) of ϕ(u, v) provide
the most probable orientations of the lanes in the image. This is used to form an
112 Paper A Situational Awareness and Road Prediction for Trajectory Control App.
Given that an initial LBROI is found, the task is now to make use of this informa-
tion in order to compute estimates of the parameters in the lane model (27),
h iT h iT h iT
θ = (θ l )T (θ r )T , where θ l = al bl cl , θ r = ar br cr , (31)
where superscript l and r have been used to indicate the left lane marking and the
right lane marking, respectively. Estimates of these parameters θ are obtained by
solving a constrained weighted least squares problem for each image. The cost
function is given by
N
X
V (θ) = Mil (uli − lθ l (vli ))2 + (Mir (uri − lθ r (vri ))2 , (32)
i=1
where N denotes the number of relevant pixels in the lateral u direction, l denotes
the lane model given in (27) and Mi denotes the magnitude in the thresholded
edge-image g2 (u, v), Mi = g2 (ui , vi ), defined as
1
g(u, v), g(u, v) ≥ 2 Mmean
g2 (u, v) = (33)
0,
otherwise
where Mmean denotes the mean magnitude of the g(u, v).
Constraints are introduced in order to account for the fact that the right lane and
the left lane are related to each other. This is modelled according to the following
linear (in θ) inequality constraint
ar − al + (br − bl )(v1 − vm ) + (cr − cl )(v1 − vm )2 ≤ δ, (34)
which states that the left and the right lanes cannot be more than δ pixels apart
furthest away (at v1 ) from the host vehicle. In other words, (34) encodes the fact
that the left and the right lanes must have similar geometry in the sense that the
quadratic parts in (27) are strongly related.
From (32)–(34) it is now clear that lane estimation boils down to a curve esti-
mation problem, which here is quadratic in the unknown parameters θ. More
specifically, inserting the lane model (27) into the cost function (32) and writ-
ing the problem on matrix form results in a constrained weighted least squares
Time: 5 s
4 Road Map 113
Time: 19 s
(a)
(b)
Figure 4: Lane estimation results (in red) overlayed onto the camera image.
From this figure the lane model (27) is clearly illustrated, the model is linear
for v > vs and quadratic for v ≤ vs . The method assumes that the road surface
is flat and when this assumption is true the results are good, see Figure (a).
However, when this assumption does not hold the estimates are not that good
on a longer horizon, see Figure (b).
1 The QP code was provided by Dr. Adrian Wills at the University of Newcastle, Australia, see
http://sigpromu.org/quadprog. This code implements the method described by Goldfarb and Idnani
(1983); Powell (1985).
114 Paper A Situational Awareness and Road Prediction for Trajectory Control App.
The lane estimates that are now obtained as the solution to (35) can be expressed
in world coordinates, seen from the ego vehicle, using geometrical transformation
along the lines of what has already been described in Section 3. These transfor-
mation are discussed in detail in Guiducci (2000). Once the lane estimates are
available in the world coordinates they can be used as camera measurements in a
sensor fusion framework to make a very important contribution to the estimate of
map variables m (i.e., (15) or (24)) in the road model (perhaps most importantly
the curvature c0 and the curvature derivative c1 ) as it is derived in Section 4.1.
for discrete time instants k = 1, . . . , K. In many cases in reality (e.g., radar, laser
and stereo vision cf. (5)) and in the practical application considered in this section,
the sensor provides range r and azimuth angle ψ given as,
(i)
h iT Nz,k
z̄k , r (i) ψ (i) . (39)
k i=1
yk = h(mk , uk ) + ek , (40b)
where m, u and y denote the state, the input signal, and the output signal, while
w ∼ N (0, Q) and e ∼ N (0, R) are the process and measurement noise, respec-
tively. The use of an input signal u is important in this framework. For the sake
of simplicity, the tracked objects are assumed stationary, resulting in very simple
motion models (40a).
(39), one has to convert both the measurement z̄ and the measurement noise co-
variance
Σp = diag(σd2 , σδ2 ) (47)
into Cartesian coordinates. This is a rather standard procedure. Note that, in
such a case, the resulting Cartesian measurement covariance Σc is, in general,
not necessarily diagonal and hence Σxy of (46) might be non-zero.
Since the model (43) is linear, the Kalman filter measurement update formulas
can be used to incorporate the information in z into the extended source state
ma . An important question in this regard is what would be the measurement
covariance of the measurement noise term e in (43).
Neglecting the errors in the model parameters Ha (u) can cause overconfidence
in the estimates of recursive filters and can actually make data association dif-
ficult in tracking applications (by causing too small gates). A simple methodol-
ogy is used to take the uncertainties in Ha (u) into account in line with the eiv
framework. Assuming that the elements of the noise free quantity z0 satisfy the
polynomial equation exactly according to
y − ỹ = Ha (u − ũ)ma , (48a)
h i
y − ỹ = 1 x − x̃ (x − x̃)2 ··· (x − x̃)n ma , (48b)
which can be approximated using a first order Taylor expansion resulting in
y ≈ Ha (u)ma − Hea (u)x̃ma + ỹ (49a)
" #
x̃
= Ha (u)ma + h̃a (ma , u) , (49b)
ỹ
with
h i
Ha (u) = 1 x x2 · · · xn , (49c)
h i
ea (u) = 0 1 2x · · · nxn−1 ,
H (49d)
h i
h̃a (ma , u) = −a1 − 2a2 x − · · · − nan xn−1 1 . (49e)
Hence, the noise term e of (43) is given by
" #
x̃
e = ỹ − Ha x̃ma = h̃(ma , u)
e (50)
ỹ
and its covariance is given by
Σa = E(eeT ) = Σy + ma H eaT mTa − 2H
ea Σx H ea Σxy
= h̃(ma , u)Σc h̃T (ma , u). (51)
Note that the eiv covariance Σa depends on the state variable ma , which is sub-
stituted by its last estimate in recursive estimation.
Up to this point, only the relation of the observation z to the state component ma
has been considered. It remains to discuss the relation between the observation
4 Road Map 117
and the start xstart and the end points xend of the polynomial. The measurement
information must only be used to update these components of the state if the new
observations of the extended source lie outside the range of the polynomial. The
following (measurement dependent) measurement matrix can be defined for this
purpose:
h i
1 0 if x ≤ xstart,k|k−1
h
i
Hse =
0 1 if x ≥ xend,k|k−1 (52)
h i
0 0 otherwise.
Any model as e.g., the standard constant velocity or the coordinated turn model
may be used for the targets. For simplicity it is assumed that the targets are
stationary in this contribution, thus the process model on the form (40a) is linear
and may be written
mk+1 = Fmk + wk . (54)
To increase the flexibility of the extended object an assumption about the dy-
namic behavior of its size is made. The size of the extended object is modeled to
shrink with a factor 0.9 < λ < 1 according to
xstart,k+1 = xstart,k + λ(xend,k − xstart,k ), (55a)
xend,k+1 = xend,k − λ(xend,k − xstart,k ), (55b)
leading to the following process model for the polynomial
n×n
0n×2
I
F = 2×n 1 − λ λ . (56)
0
λ 1−λ
This shrinking behavior for the polynomials allows for automatic adjustment of
the start and end points of the polynomials according to the incoming measure-
118 Paper A Situational Awareness and Road Prediction for Trajectory Control App.
ments.
The section is concluded with some results based on the information given by an
ordinary automotive acc radar, for the traffic situation shown in Figure 5a. The
ego vehicle, indicated by a green circle, is situated at the (0, 0)-position in Fig-
ure 5b, and the red dots are the radar reflections, or stationary observations, at
one time sample. The smaller magenta colored dots are former radar reflections,
obtained at earlier time samples. Figure 5c shows the estimated points and lines
for the same scenario using the kf eiv method presented in this contribution.
The mean values of the states are indicated by solid black lines or blue points.
Furthermore, the state variance, by means of the 90% confidence interval, is illus-
trated by gray lines or cyan colored ellipses, respectively. The estimate of the lane
markings (18), illustrated by the gray dashed lines and derived according to the
method presented in Lundquist and Schön (2010), is shown here as a comparison.
Tracked vehicle in front of the ego vehicle are illustrated by blue squares.
An occupancy grid map is defined over a continuous space and it can be dis-
cretized with, e.g., a grid approximation. The size of the map can be reduced to
a certain area surrounding the ego vehicle. In order to keep a constant map size
while the vehicle is moving, some parts of the map are thrown away and new
parts are initiated. Occupancy grid mapping (ogm) is one method for tackling
the problem of generating consistent maps from noisy and uncertain data under
the assumption that the ego vehicle pose, i.e., position and heading, is known.
These maps are very popular in the robotics community, especially for all sorts of
autonomous vehicles equipped with laser scanners. Indeed several of the darpa
urban challenge vehicles used ogm’s, see Buehler et al. (2008). This is because
they are easy to acquire, and they capture important information for navigation.
The ogm was introduced by Elfes (1987) and an early introduction is given by
Moravec (1988). To the best of the author’s knowledge Borenstein and Koren
(1991) were the first to utilize ogm for collision avoidance. Examples of ogm in
automotive applications are given in Vu et al. (2007). A solid treatment can be
found in the recent textbook by Thrun et al. (2005).
This section begins with a brief introduction to occupancy grid maps, according
to Thrun et al. (2005). Using this theory and a sensor with high resolution usually
gives a nice looking bird eye’s view map. However, since a standard automotive
radar is used, producing only a few range and bearing measurements at every
time sample, some modifications are introduced as described in the following
sections.
5 Occupancy Grid Map 119
(a)
80 80
70 70
60 60
50 50
40 40
xE [m]
xE [m]
30 30
20 20
10 10
0 0
−10 −10
−20 −20
−20 −10 0 10 20 −20 −10 0 10 20
E
y [m] yE [m]
(b) (c)
Figure 5: A traffic situation is shown in Figure (a). Figure (b) shows the
radar measurements, and Figure (c) the resulting tracked points and lines.
The circle in the origin is the ego vehicle, the square is the tracked vehicle in
front and the dashed gray lines illustrate the tracked road curvature.
120 Paper A Situational Awareness and Road Prediction for Trajectory Control App.
5.1 Background
The planar map M is defined in the world coordinate frame W and is represented
by a matrix. An occupancy grid map is partitioned into finitely many grid cells
N
M = {m(j) }j=1
m
. (57)
The occupancy grid map was originally developed to primarily be used with mea-
surements from a laser scanner. A laser is often mounted on a rotating shaft and
it generates a range measurement for every angular step of the mechanical shaft,
i.e. a bearing angle. This means that the continuously rotating shaft produces
many range and bearing measurements during every cycle. The ogm algorithms
transform the polar coordinates of the measurements into Cartesian coordinates
in a fixed world or map frame. After completing one mechanical measurement
cycle the sensor provides the measurements for use.
The algorithm loops through all cells and increases the occupancy probability
(i)
p(m(j) ) if the cell was occupied according to the measurement zk . Otherwise the
occupancy value either remains unchanged or is decreased, depending on if the
range to the cell is greater or less than the measured range. The latter implies
that the laser beam did pass this cell without observing any obstacles. If the
measured range is too large or the cell size is too small, it might be necessary
to consider the angular spread of the laser beam and increase or decrease the
occupancy probability of several cells with respect to the beam width.
The map is assumed to be static, i.e., it does not change during sensing. In this
section the map estimation problems is solved with a binary Bayes filter, of which
ogm is one example. In this case the estimation problem is solved with the binary
Bayes filter, of which ogm is one example. the state can either be free m(j) = 0
or occupied m(j) = 1. A standard technique to avoid numerical instabilities for
probabilities close to 0 and to avoid truncation problems close to 0 and 1 is to use
the log odds representation of occupancy
p(m(j) |Z1:k , xE,1:k )
`j,k = log , (58)
1 − p(m(j) |Z1:k , xE,1:k )
or put in words, the odds of a state is defined as the ratio of the probability
of this event p(m(j) |Z1:k , xE,1:k ) divided by the probability of its complement 1 −
p(m(j) |Z1:k , xE,1:k ). The probabilities are easily recovered using
1
p(m(j) |Z1:k , xE,1:k ) = 1 − . (59)
1 + exp `j,k
Note that the filter uses the inverse measurement model p(m|z, x). Using Bayes’
5 Occupancy Grid Map 121
rule it can be shown that the binary Bayes filter in log odds form is
p(m(j) |Zk , xE,k ) p(m(j) )
`j,k = `j,k−1 + log − log , (60)
1 − p(m(j) |Zk , xE,k ) 1 − p(m(j) )
where p(m(j) ) represents the prior probability. The log odds ratio of the prior
before processing any measurements is defined as
p(m(j) )
`j,0 = log . (61)
1 − p(m(j) )
Typically p(m(j) ) = 0.5 is assumed, since before having measurements nothing is
known about the surrounding environment. This value yields `0 = 0.
110
50
120
100 130
140
150
150
200 160
170
250
180
300 190
200
350
210
400 220
50 100 150 200 250 300 350 400 180 200 220
(a) (b)
(c)
Figure 6: The filled circle at position (201, 201) in the occupancy grid map
in Figure (a) is the ego vehicle, the + are the radar observations obtained
at this time sample, the black squares are the two leading vehicles that are
currently tracked. Figure (b) shows a zoom of the ogm in front of the ego
vehicle. The gray-level in the figure indicates the probability of occupancy,
the darker the grid cell, the more likely it is to be occupied. The shape of the
road is given as solid and dashed lines, calculated as described in Section 4.
The camera view from the ego vehicle is shown in Figure (c), the concrete
walls, the guardrail and the pillar of the bridge are interesting landmarks.
Furthermore, the two tracked leading vehicles are clearly visible in the right
lane.
6 Intensity Based Map 123
whereas on the right side there are several obstacles behind the guardrail, which
also cause reflections, e.g., noise barrier and vegetation. A closer look in Figure 6b
reveals that there is no black line of occupied cells representing the guardrail as
expected. Instead there is a region with mixed probability of occupancy and after
about 5 m the gray region with initial valued cells tell us that nothing is known
about these cells.
The aim of the mapping algorithm is to estimate the posterior density (3). The
considered intensity based map is continuous over the surveillance region, thus,
for the number of elements in (1) it holds that Nm → ∞. Furthermore, the inten-
sity is a summary statistic of the map according to
p(Mk |Z1:k ) ∼ p(Mk ; Dk|k ), (65)
7 Conclusion 125
see e.g., Mahler (2003), and the estimated intensity Dk|k is parametrized by
(i) (i) (i) (i)
µk , wk , mk , Pk (66)
of the Gaussian sum (63). The intensity based map is a multimodal surface with
peaks around areas with many sensor reflections or point sources. It is worth
observing that the map M is described by a location based function (63), with
feature based parametrization (66).
Experiments were conducted with a prototype passenger car. One example of the
estimated intensity at a freeway traffic scenario is shown as a bird’s eye view in
Figure 7c. Darker regions illustrate higher concentrations of point sources, which
in this figure stem from the guardrails to the left and the right of the road. As
expected, the path of the ego vehicle, indicated by the black dots, is in between
the two regions of higher object concentration. The driver’s view is shown in
Figure 7a.
A second example is shown in Figure 7d and 7b. Here, the freeway exit is clearly
visible in the intensity map, which shows that the proposed method to create
maps is very conformable.
The Gaussian components are generally removed from the filter when the vehicle
passed those parts of the map. However, to give a more comprehensive overview,
these components are stored and the resulting intensity based map is shown to-
gether with an occupancy grid map (ogm) and a flight photo in Figure 8. The top
figure is the map produced as described in this section. The ogm, described in
the precious Section 5, is based on the same data set and used as a comparison.
The gray-level of the ogm indicates the probability of occupancy, the darker the
grid cell the more likely it is to be occupied. As seen in the figure the road edges
are not modeled as distinct with the ogm. The ogm representation of the map is
not very efficient, since huge parts of the map are gray indicating that nothing is
known about these areas. An ogm matrix with often more than 10000 elements
must be updated and communicated to other safety functions of a car at each
time step. The compact representation is an advantage of the intensity based
map. Each Gaussian components is parametrized with 7 scalar values according
to (66). Since most maps are modeled with 10 − 30 components it summarizes to
around 70 − 210 scalar values, which easily can be sent on the vehicles can bus
to other safety functions. Finally, the bottom photo is a very accurate flight photo
(obtained from the Swedish mapping, cadastral and land registration authority),
which can be used as ground truth to visualize the quality of the intensity based
map.
7 Conclusion
The use of radar, laser and camera for situation awareness is gaining popularity
in automotive safety applications. In this chapter it has been shown how sensor
data perceived from the ego vehicle is used to estimate a map describing the local
126 Paper A Situational Awareness and Road Prediction for Trajectory Control App.
Figure 7: The image in (a) shows the driver’s view of the intensity map in (c),
and the image in (b) is the driver’s view of the intensity map in (d). The
darker the areas in the intensity map, the higher the concentration of objects.
The drivers path is illustrated with black dots and may be used as a reference.
Note that snap shot in (d) and (b) is obtained only some meters after the
situation shown in Figure 1.
7 Conclusion 127
50
100
150
100 200 300 400 500 600 700 800 900 1000 1100
Figure 8: The top figure shows the intensity based map obtained from radar
measurements collected on a freeway. The ogm in the middle figure serves
as a comparison of an existing algorithm. The bottom figure is a flight photo
used as ground truth, where the driven trajectory is illustrated with a dashed
line (©Lantmäteriet Gävle 2010. Medgivande I 2011/0100. Reprinted with
permission). Note that the drivers view at 295 meter is shown in Figure 7b,
and about the same position is also shown in Figure 1 and Figure 5.
Bibliography
Å Björck. Numerical methods for least squares problems. SIAM, Philadelphia,
PA, USA, 1996.
S. S. Blackman and R. Popoli. Design and Analysis of Modern Tracking Systems.
Artech House, Norwood, MA, USA, 1999.
J. Borenstein and Y. Koren. The vector field histogram-fast obstacle avoidance for
mobile robots. IEEE Transactions on Robotics and Automation, 7(3):278–288,
June 1991.
M. Buehler, K. Iagnemma, and S. Singh, editors. Special Issue on the 2007 DARPA
Urban Challenge, Part I-III, volume 25 (8–10). Journal of Field Robotics, 2008.
D. Caveney. Cooperative vehicular safety applications. IEEE Control Systems
Magazine, 30(4):38–53, August 2010.
J. Civera, A. J. Davison, and J. Montiel. Inverse depth parametrization for monoc-
ular SLAM. IEEE Transactions on Robotics, 24(5):932–945, October 2008.
D. J. Daley and D. Vere-Jones. An introduction to the theory of point processes.
Vol. 1 , Elementary theory and method. Springer, New York, NY, USA, 2 edition,
2003.
A. J. Davison, I. Reid, N. Molton, and O. Strasse. MonoSLAM: Real-time single
camera SLAM. IEEE Transactions on Patterns Analysis and Machine Intelli-
gence, 29(6):1052–1067, June 2007.
E. D. Dickmanns. Dynamic computer vision for mobile robot control. In Proceed-
ings of the International Symposium on Industrial Robots, Sydney, Australia,
November 1988.
E. D. Dickmanns. Dynamic Vision for Perception and Control of Motion.
Springer, London, UK, 2007.
E. D. Dickmanns and B. D. Mysliwetz. Recursive 3-D road and relative ego-state
recognition. IEEE Transactions on pattern analysis and machine intelligence,
14(2):199–213, February 1992.
R. Diversi, R. Guidorzi, and U. Soverini. Kalman filtering in extended noise envi-
ronments. IEEE Transactions on Automatic Control, 50(9):1396–1402, Septem-
ber 2005.
R. O. Duda and P. E. Hart. Use of the hough transformation to detect lines and
curves in pictures. Communications of the ACM, 15(1):11–15, January 1972.
A. Eidehall, J. Pohl, F. Gustafsson, and J. Ekmark. Toward autonomous collision
avoidance by steering. IEEE Transactions on Intelligent Transportation Sys-
tems, 8(1):84–94, March 2007.
A. Elfes. Sonar-based real-world mapping and navigation. IEEE Journal of
Robotics and Automation, 3(3):249–265, June 1987.
Bibliography 129
O. Erdinc, P. Willett, and Y. Bar-Shalom. The bin-occupancy filter and its con-
nection to the PHD filters. IEEE Transactions on Signal Processing, 57(11):
4232–4246, November 2009.
K. Gilholm and D. Salmond. Spatial distribution model for tracking extended
objects. IEE Proceedings of Radar, Sonar and Navigation, 152(5):364–371, Oc-
tober 2005.
P. E. Gill, W. Murray, M. A. Saunders, and M. H. Wright. Inertia-controlling
methods for general quadratic programming. SIAM Review, 33(1):1–36, March
1991.
D. Goldfarb and A. Idnani. A numerically stable dual method for solving strictly
convex quadratic programs. Mathematical Programming, 27(1):1–33, 1983.
N. J. Gordon, D. J. Salmond, and A. F. M. Smith. Novel approach to
nonlinear/non-Gaussian Bayesian state estimation. IEE Proceedings on Radar
and Signal Processing, 140(5):107–113, April 1993.
A. Guiducci. Parametric model of the perspective projection of a road with ap-
plications to lane keeping and 3D road reconstruction. Computer Vision and
Image Understanding, 73(3):414–427, March 1999.
A. Guiducci. Camera calibration for road applications. Computer Vision and
Image Understanding, 79(2):250–266, August 2000.
C. Harris and M. Stephens. A combined corner and edge detector. In Proceedings
of the Alvey Vision Conference, pages 147–151, Manchester, UK, September
1988.
P. V. C. Hough. A method and means for recognizing complex patterns. U.S.
Patent No. 3069654, December 1962.
C. R. Jung and C. R. Kelber. Lane following and lane departure using a linear-
parabolic model. Image and Vision Computing, 23(13):1192–1202, November
2005.
Z. W. Kim. Robust lane detection and tracking in challenging scenarios. IEEE
Transactions on Intelligent Transportation Systems, 9(1):16–26, March 2008.
J. W. Lee. A machine vision system for lane-departure detection. Computer vision
and image understanding, 86(1):52–78, April 2002.
D. G. Lowe. Distinctive image features from scale-invariant keypoints. Interna-
tional Journal of Computer Vision, 60(2):91–110, November 2004.
C. Lundquist and T. B. Schön. Joint ego-motion and road geometry estimation.
Information Fusion, 2010. DOI: 10.1016/j.inffus.2010.06.007.
C. Lundquist, L. Hammarstrand, and F. Gustafsson. Road intensity based map-
ping using radar measurements with a probability hypothesis density filter.
IEEE Transactions on Signal Processing, 59(4):1397–1408, April 2011a.
130 Paper A Situational Awareness and Road Prediction for Trajectory Control App.
J. Matas, O. Chum, M. Urban, and T. Pajdla. Robust wide baseline stereo from
maximally stable extremal regions. Image and Vision Computing, 22(10):731–
767, September 2004.
D. Nistér, O. Naroditsky, and J. Bergen. Visual odometry for ground vehicle ap-
plications. Journal of Field Robotics, 23(1):3–20, January 2006.
H. Rohling and C. Möller. Radar waveform for automotive radar systems and
applications. In IEEE Radar Conference, pages 1–4, Rome, Italy, May 2008.
S. Thrun, W. Burgard, and D. Fox. Probabilistic Robotics. The MIT Press, Cam-
bridge, MA, USA, 2005.
Bibliography 131
B.-N. Vo and W.-K. Ma. The Gaussian mixture probability hypothesis density
filter. IEEE Transactions on Signal Processing, 54(11):4091–4104, November
2006.
B.-N. Vo, S. Singh, and A. Doucet. Random finite sets and sequential Monte Carlo
methods in multi-target tracking. In Proceedings of the International Radar
Conference, pages 486–491, Adelaide, Australia, September 2003.
T. D. Vu, O. Aycard, and N. Appenrodt. Online localization and mapping with
moving object tracking in dynamic outdoor environments. In Proceedings
of the IEEE Intelligent Vehicles Symposium, pages 190–195, Istanbul, Turkey,
June 2007.
Y. Wang, L. Bai, and M. Fairhurst. Robust road modeling and tracking using
condensation. IEEE Transactions on Intelligent Transportation Systems, 9(4):
570–579, December 2008.
A. Waxman, J. LeMoigne, L. Davis, B. Srinivasan, T. Kushner, Eli Liang, and T. Sid-
dalingaiah. A visual navigation system for autonomous land vehicles. IEEE
Journal of Robotics and Automation, 3(2):124–141, April 1987.
Y. Zhou, R. Xu, X. Hu, and Q. Ye. A robust lane detection and tracking method
based on computer vision. Measurement science and technology, 17(4):736–
745, April 2006.
Paper B
Joint Ego-Motion and Road Geometry
Estimation
Preliminary version:
Technical Report LiTH-ISY-R-2844, Dept. of Electrical Engineering, Lin-
köping University, SE-581 83 Linköping, Sweden.
Joint Ego-Motion and Road Geometry
Estimation
Abstract
We provide a sensor fusion framework for solving the problem of joint
ego-motion and road geometry estimation. More specifically we em-
ploy a sensor fusion framework to make systematic use of the mea-
surements from a forward looking radar and camera, steering wheel
angle sensor, wheel speed sensors and inertial sensors to compute
good estimates of the road geometry and the motion of the ego vehicle
on this road. In order to solve this problem we derive dynamical mod-
els for the ego vehicle, the road and the leading vehicles. The main
difference to existing approaches is that we make use of a new dy-
namic model for the road. An extended Kalman filter is used to fuse
data and to filter measurements from the camera in order to improve
the road geometry estimate. The proposed solution has been tested
and compared to existing algorithms for this problem, using measure-
ments from authentic traffic environments on public roads in Sweden.
The results clearly indicate that the proposed method provides better
estimates.
1 Introduction
We are in this paper concerned with the problem of integrated ego-motion and
road geometry estimation using information from several sensors. The sensors
used to this end are a forward looking camera and radar, together with inertial
sensors, a steering wheel sensor and wheel speed sensors. The solution is ob-
tained by casting the problem within an existing sensor fusion framework. An im-
portant part of this solution is the nonlinear state-space model. The state-space
model contains the dynamics of the ego vehicle, the road geometry, the leading
vehicles and the measurement relations. It can then be written in the form
xk+1 = f (xk , uk ) + wk , (1a)
yk = h(xk , uk ) + ek , (1b)
135
136 Paper B Joint Ego-Motion and Road Geometry Estimation
where xk ∈ Rnx denotes the state vector, uk ∈ Rnu denotes the input signals,
yk ∈ Rny denotes the measurements, wk ∈ Rnw and ek ∈ Rne denote the process
and measurement noise, respectively. The process model equations, describing
the evolution of the state over time are denoted by f : Rnx × Rnu → Rnx . Fur-
thermore, the measurement model describing how the measurements from the
vision system, the radar and the inertial sensors relate to the state is given by
h : Rnx × Rnu → Rny . When we have a model in the form (1) we have transformed
the problem into a standard nonlinear state estimation problem, where the task is
to compute estimates of the state based on the information in the measurements.
There are many different ways of solving this problem and we will in this work
make use of the popular Extended Kalman Filter (ekf), described in e.g., Smith
et al. (1962); Schmidt (1966); Anderson and Moore (1979).
The problem studied in this paper is by no means new, it is the proposed solution
that is new. For some early, still very interesting and relevant work on this prob-
lem we refer to Dickmanns and Zapp (1986); Dickmanns and Mysliwetz (1992).
From the camera we can produce estimates of the road geometry based on mea-
surements of the lane markings. This problem is by now rather mature, see e.g.,
the survey McCall and Trivedi (2006) and the recent book Dickmanns (2007) for
solid accounts. The next step in the development was to make use of the radar
information as well. Using radar measurements we can track the leading vehicles,
that is, we can estimate the position and velocity of the leading vehicles. Under
the assumption that the leading vehicles drive on the same road as the ego vehicle,
their positions contain valuable information about the road geometry. This idea
was introduced by Zomotor and Franke (1997); Gern et al. (2000, 2001) and has
been further refined in Eidehall et al. (2007); Eidehall (2007). The combination of
radar and vision as well as the advantages and disadvantages of these sensors are
discussed in Hofmann et al. (2000, 2003). Furthermore, the ego vehicle model
in Hofmann et al. (2000, 2003) is comparable with the one used in the present
work. The four wheel speeds are used to estimate the path of the ego vehicle,
which unlike the present work is separated from the leading vehicles dynamics
and the lane estimate.
The leading vehicles are used to improve the road geometry in the present work;
however the opposite is also possible as the recent work Schubert et al. (2009);
Weigel et al. (2009) shows, where the vehicle detection algorithm benefits from
the lane information. Vision and radar are used in Schubert et al. (2009), whereas
vision and lidar are used in Weigel et al. (2009). In Muller et al. (2009) lidar is
used to detect the leading vehicle, and the movement of the leading vehicle is
then used to estimate the lane and the driven path, which in turn is used to
autonomously follow this vehicle. This works well even for curved and narrow
roads. Unmarked and winding rural roads may be hard to detect, recent research
in this area is presented in Loose et al. (2009), where stereo vision and image
radar are used within a marginalized particle filter to obtain 3D information and
improve the task of lane recognition. Information obtained from road-side struc-
tures may be used to improve the estimate of the lane shape and the position
of the vehicle within the lane, as showed in Watanabe et al. (2009), where only a
2 Sensor Fusion 137
Lane tracking has also been tackled using radar sensors, see e.g., Kaliyaperu-
mal et al. (2001); Lakshmanan et al. (1997); Nikolova and Hero (2000); Ma et al.
(2000) and laser sensors, see e.g. Wijesoma et al. (2004). There have been sev-
eral approaches making use of reflections from the road boundary, such as crash
barriers and reflection posts, to compute information about the free space, see
e.g. Kirchner and Heinrich (1998); Kirchner and Ameling (2000); Sparbert et al.
(2001) for some examples using laser scanners and Lundquist et al. (2009), where
radar is used.
2 Sensor Fusion
In order to successfully solve the problem under study in this work it is impera-
tive to have a good understanding of sensor fusion. Sensor fusion is defined as
the process of using information from several different sensors to compute an
estimate of the state of a dynamical system.
We need a dynamic model and a measurement model in the form (1) in order to
be able to produce an estimate of the state. These models are derived in detail
in Section 3 and Section 4. However, for the sake of the present discussion we
will briefly discuss the model here. The state vector xk consists of three parts
138 Paper B Joint Ego-Motion and Road Geometry Estimation
according to
xE,k
x
xk = R,k , (2)
xT,k
where xE,k denotes the state of the ego vehicle, xR,k denotes the state of the road
and xT,k denotes the state of one leading vehicle (also referred to as a target). In
deriving the evolution of these states over time we will end up with continuous-
time differential equations in the form
ẋ(t) = g(x(t), u(t)). (3)
However, according to (1) we required the model to be in discrete time. The
simplest way of obtaining a difference equation from (3) is to make use of the
standard forward Euler method, which approximates (3) at time t according to
x(t + T ) = x(t) + T g(x(t), u(t)) , f (xt , ut ), (4)
where T denotes the sample time. The measurement model is of course already
in discrete time.
The estimate of the state is computed by a state estimator of some kind. This state
estimator makes use of the measurements from the different sensors to produce
an estimate of the so called filtering probability density function (pdf) p(xk |y1:k ),
where y1:k , {yi }ki=1 denotes all the measurements from time 1 to time k. This
density function contains all there is to know about the state xk , given the in-
formation in the measurements y1:k . Once an approximation of p(xk |y1:k ) is avail-
able it can be used to form many different estimates and the most commonly used
estimate is the conditional mean estimate
x̂k|k = E(xk |y1:k ). (5)
This estimate will be used in the present work as well.
Here, it is also worth mentioning that since we have assumed additive noise in
the model (1), we have explicit expressions for p(xk+1 |xk ) and p(yk |xk ) according
to
p(xk+1 |xk ) = pwk (xk+1 − f (xk , uk )), (7a)
p(yk |xk ) = pek (yk − h(xk , uk )), (7b)
3 Dynamic Models 139
where pwk ( · ) and pek ( · ) denote the pdf’s for the process and the measurement
noise, respectively.
In the special case, where the equations in the model (1) are linear and the noise is
Gaussian, the multidimensional integrals in (6) allows for an analytical solution,
the Kalman filter Kalman (1960). For a derivation of this kind, see e.g., Schön
(2006). However, the problem is that for the general nonlinear, non-Gaussian
case that we are facing, there does not exist any closed form solution to (6). Hence,
we are forced to make approximations of some kind. The most commonly used
approximation is provided by the extended Kalman filter (ekf). The idea underly-
ing the ekf is very simple, approximate the nonlinear model with a linear model
subject to Gaussian noise and apply the Kalman filter to this approximation. For
a solid account of the ekf we refer to Anderson and Moore (1979); Kailath et al.
(2000). Lately the so called particle filter, introduced in Gordon et al. (1993), has
become increasingly popular. This filter often provides a better solution, but it
typically requires much more computational effort. For the present application
the ekf provides an approximation that is good enough. For a more thorough
account of the framework for nonlinear estimation briefly introduced above we
refer to Schön (2006).
Before we end our brief overview on the sensor fusion problem it is important
to stress that a successful sensor fusion framework will, besides the modeling
and filtering parts mentioned above, rely on a certain surrounding infrastruc-
ture. This surrounding infrastructure deals with issues such as time synchro-
nization between the various sensors, calibration, sensor-near signal processing,
track handling, etc. This part of the framework should not be overlooked and
a solid treatment of the provided infrastructure is accounted for in Bengtsson
and Danielsson (2008) for the problem at hand. Despite this it is worth mention-
ing that the leading vehicles are incorporated into the estimation problem using
rather standard techniques from target tracking, such as nearest neighbor data
association and track counters in order to decide when to stop tracking a certain
vehicle, etc. These are all important parts of the system we have implemented,
but it falls outside the scope of this paper and since the techniques are rather
standard we simply refer to the general treatments given in e.g., Blackman and
Popoli (1999); Bar-Shalom et al. (2001).
3 Dynamic Models
As mentioned in the introduction our sensor fusion framework needs a state-
space model describing the dynamics of the ego vehicle, the road and the leading
vehicles. In this section we will derive the differential equations describing the
motion of the ego vehicle (Section 3.2), the road (Section 3.3) and the leading vehi-
cles (Section 3.4), also referred to as targets. Finally, in Section 3.5 we summarize
these equations and form the process model of the state-space model. However,
before we embark on deriving these equations we introduce the overall geometry
and some necessary notation in Section 3.1.
140 Paper B Joint Ego-Motion and Road Geometry Estimation
x ψTn lVn
OTn
x
Tn y ψVn
OV
Vn
y
lf
ls
dW dW x
Tn W VW
ψE
OE lr
E lb
y
y W dW
EW
OW x
Figure 1: Coordinate frames describing the ego vehicle, with center of grav-
ity in OE and the radar and camera sensors mounted in OV . One leading
vehicle is positioned in OTn .
we leave out E when referring to the ego vehicle’s velocity and acceleration. This
notation will be used when referring to the various coordinate frames. However,
certain frequently used quantities will be renamed, in the interest of readability.
The measurements are denoted using superscript m. Furthermore, the notation
used for the rigid body dynamics is in accordance with Hahn (2002).
−Cαf lf cos δf + Cαr lr Cαf lf2 cos δf + Cαr lr2 Cαf lf tan δf
ψ̈E = β − ψ̇E + , (11a)
Izz Izz vx Izz
Cαf cos δf + Cαr + v̇x m Cαf lf cos δf − Cαr lr Cαf sin δf
!
β̇ = −β − ψ̇E 1+ 2
+ ,
mvx vx m mvx
(11b)
where m denotes the mass of the vehicle and Izz denotes the moment of inertia
of the vehicle about its vertical axis in the center of gravity. These single track
142 Paper B Joint Ego-Motion and Road Geometry Estimation
ρ αf
δf
v
β
ψE y W
CoG
αr
OW x
Figure 2: In the single track model the wheels on each axle are modeled as
single units. The velocity vector v, with the float angle β to the longitudinal
axis of the vehicle, is attached at the center of gravity. Furthermore, the
wheel slip angles are referred to as αf and αr . The front wheel angle is
denoted by δf and the current radius is denoted by ρ.
model equations are well-known in the literature, see e.g., Kiencke and Nielsen
(2005).
The most essential component in describing the road geometry is the curvature
c, which we will define as the curvature of the white lane marking to the left of
the ego vehicle. An overall description of the road geometry is given in Figure 3.
The heading angle ψR is defined as the tangent of the road at the level of the ego
vehicle in the world reference frame W , see Figure 4. The angle δr is the angle
between the tangent of the road curvature and the longitudinal axis of the ego
vehicle. Note that this angle can be measured by sensors mounted on the ego
vehicle. Furthermore, we define δR as
δR , δr − β, (12)
i.e., the angle between the ego vehicles direction of motion (velocity vector) and
the road curvature tangent.
The road curvature c is typically parameterized according to
c(xc ) = c0 + c1 xc , (13)
3 Dynamic Models 143
w
x
lTn OTn R
xT R
δTn n
Tn y
lVn
1
c
x x
δ Vn
R lR
OVn
y OR
Vn y
x
y W
E OE
y
OW x
Figure 3: Relations between one leading vehicle in OTn , the ego vehicle and
the road. The distance between the ego vehicle’s longitudinal x-axis and the
white lane to its left is lR (t). The leading vehicle’s distance to the lane mark-
ing is lTn and its heading angle in the road frame R is δTn . The lane width is
w.
where xc is the position along the road in a road aligned coordinate frame and
xc = 0 at the vehicles center of gravity. Furthermore, c0 describes the local cur-
vature at the ego vehicle position and c1 is the distance derivative (hence, the
rate of change) of c0 . It is common to make use of a road aligned coordinate
frame when deriving an estimator for the road geometry, a good overview of this
approach is given in Eidehall (2007). There are several advantages using road
aligned coordinate frames, particularly the motion models of the other vehicles
on the same road can be greatly simplified. However, the flexibility of the motion
models is reduced and basic dynamic relations such as Newton’s and Euler’s laws
cannot be directly applied. Since we are using a single track model of the ego
vehicle, we will make use of a Cartesian coordinate frame. A good polynomial
approximation of the shape of the road curvature is given by
c c
yE = lR + xE tan δr + 0 (xE )2 + 1 (xE )3 , (14)
2 6
144 Paper B Joint Ego-Motion and Road Geometry Estimation
ρ= 1 dlR
c
dψR duR du
dψ
E +d
y W ψR β
ψE + β
OW x
Figure 4: Infinitesimal segments of the road curvature duR and the driven
path du are shown together with the angles δR = ψR − (ψE + β).
where lR (t) is defined as the time dependent distance between the ego vehicle and
the lane marking to the left, see e.g., Dickmanns and Mysliwetz (1992); Eidehall
(2007).
The following dynamic model is often used for the road
ċ0 = vc1 , (15a)
ċ1 = 0, (15b)
which can be interpreted as a velocity dependent integration. It is interesting
to note that (15) reflects the way in which roads are commonly built Dickmanns
and Mysliwetz (1992). However, we will now derive a new dynamic model for
the road, that makes use of the road geometry introduced above.
A New Dynamic Road Model
Assume that duR is an infinitesimal part of the road curvature or an arc of the
road circle with the angle dψR , see Figure 4. A segment of the road circle can be
described as
1
duR = dψR , (16)
c0
which after division with the infinitesimal change in time dt is given by
duR 1 dψR
= . (17)
dt c0 dt
Assuming that the left hand side can be reformulated according to
duR
= vx cos (ψR − ψE ) ≈ vx , (18)
dt
this yields
1
vx = ψ̇ . (19)
c0 R
3 Dynamic Models 145
We also need a differential equation for the road curvature, which can be found
by differentiating (21) w.r.t. time,
δ̈R = ċ0 vx + c0 v̇x − ψ̈E − β̈. (23)
From the above equation we have
δ̈R + ψ̈E + β̈ − c0 v̇x
ċ0 = . (24)
vx
Let us assume that δ̈R = 0. Furthermore, differentiating β̇, from (11b), w.r.t. time
and inserting this together with ψ̈E , given in (11a), into the above expression
yields the differential equation
1
ċ0 = C 2 (Izz + lr2 m)(−ψ̇E lr + βvx ) + Cαf
2
(Izz + lf2 m)(ψ̇E lf + (β − δf )vx )
(Izz m2 vx )4 αr
+ Cαr Izz m(−3ψ̇E v̇x lr + 3β v̇x vx + ψ̇E v2x ) + v̇x Izz m2 vx (2β v̇x + vx (ψ̇E − c0 vx ))
+ Cαf (Cαr (Izz + lr (−lf )m)(ψ̇E lb − 2ψ̇E lr + 2βvx − δf vx )
+ Izz m(3ψ̇E v̇x lf + (3β − 2δf )v̇x vx + (δ̇f + ψ̇E )v2x )) (25)
In this model c0 is defined at the ego vehicle and thus describes the currently
driven curvature, whereas for the curvature described by the state-space model
(15) and by the polynomial (13) it is not entirely obvious where c0 is defined.
Finally, we need a differential equation describing how the distance lR (t) between
the ego vehicle and the lane markings changes over time. Assume again an in-
finitesimal arc du of the circumference describing the ego vehicle’s curvature. By
contemplating Figure 4 we have
dlR = du sin δR , (26)
146 Paper B Joint Ego-Motion and Road Geometry Estimation
where δR is the angle between the ego vehicle’s velocity vector and the road. Di-
viding this equation with an infinitesimal change in time dt and using du/dt = v
yield the differential equation
l˙R = vx sin (δR + β), (27)
which concludes the derivation of the road geometry model.
The leading vehicles are also referred to as targets Tn . The coordinate frame
Tn moving with target n has its origin located in OTn , as we previously saw in
Figure 3. It is assumed that the leading vehicles are driving on the road, quite
possibly in a different lane. More specifically, it is assumed that they are follow-
ing the road curvature and thus that their heading is in the same direction as the
tangent of the road.
For each target Tn , there exists a coordinate frame Vn , with its origin OV at the
position of the sensor. Hence, the origin is the same for all targets, but the coordi-
nate frames have different heading angles ψVn . This angle, as well as the distance
lVn , depend on the targets position in space. From Figure 3 it is obvious that,
W
dEW + dVWn E + dTWn V − dTWn W = 0, (28)
or more explicitly,
xW W
EW + ls cos ψE + lVn cos ψVn − xTn W = 0, (29a)
yW W
EW + ls sin ψE + lVn sin ψVn − yTn W = 0. (29b)
Let us now define the relative angle to the leading vehicle as
δVn , ψVn − ψE . (30)
It is worth noticing that this angle can be measured by a sensor mounted on the
vehicle.
The target Tn is assumed to have zero lateral velocity in the Vn frame, i.e., ẏ Vn = 0,
since it is always fixed to the xVn -axis. If we transform this relation to the world
frame W , using the geometry of Figure 1 we have
" #
V W ˙W ·
R · dTn W = , (31)
0
where the top equation of the vector equality is non-descriptive and the bottom
equation can be rewritten as
−ẋW W
Tn W sin ψVn + ẏTn W cos ψVn = 0. (32)
The velocity vector of the ego vehicles is applied in the center of gravity OE . The
derivative of (29) is used together with the velocity components of the ego vehicle
and (32) to get an expression for the derivative of the relative angle to the leading
3 Dynamic Models 147
The states describing the road xR are the road curvature c0 at the ego vehicle
position, the angle δR between the ego vehicles direction of motion and the road
curvature tangent and the width of the lane w, i.e.,
h iT
xR = c0 δR w . (38)
The differential equations for c0 and δR were given in (25) and (22), respectively.
When it comes to the width of the current lane w, we have
ẇ = 0, (39)
motivated by the fact that w does not change as fast as the other variables, i.e.,
the nonlinear state-space model ẋR = gR (x, u) is given by
ċ0
C cos δf +Cαr +v̇x m Cαf lf cos δf −Cαr lr Cαf sin δf
gR (x, u) = c0 vx + β αf
+ ψ̇ − . (40)
mvx v2x m mvx
0
A target is described by the following states, azimuth angle δVn , lateral position
lTn of the target, distance between the target and the ego vehicle lVn and relative
velocity between the target and the ego vehicle l˙Vn . Hence, the state vector is
given by
h iT
xT = δVn lTn l˙Vn lVn . (41)
The derivative of the azimuth angle was given in (34). It is assumed that the lead-
ing vehicle’s lateral velocity is small, implying that l˙Tn = 0 is a good assumption
(compare with Figure 3). Furthermore, it can be assumed that the leading vehicle
accelerates similar to the ego vehicle, thus l¨Vn = 0 (compare with e.g., Eidehall
(2007)). The state-space model ẋT = gT (x, u) of a leading vehicle (target) is
ψ̇ l cos δ +v sin(β−δ )
− E s Vn x Vn
− ψ̇ E
lVn
gT (x, u) =
0 .
(42)
0
l˙Vn
Note that the dynamic models given in this section are nonlinear in u.
4 Measurement Model
The measurement model (1b) describes how the measurements yk relates to the
state variables xk . In other words, it describes how the measurements enter the
estimator. We will make use of superscript m to denote measurements. Let us
start by introducing the measurements relating directly to the ego vehicle motion,
by defining
h iT
y1 = ψ̇Em aym , (43)
4 Measurement Model 149
where ψ̇Em and aym are the measured yaw rate and the measured lateral accelera-
tion, respectively. They are both measured with the ego vehicle’s inertial sensor
in the center of gravity (CoG). The ego vehicle lateral acceleration in the CoG is
ay = vx (ψ̇E + β̇) + v̇x β. (44)
By replacing β̇ with the expression given in (11b) and at the same time assuming
that v̇x β ≈ 0 we obtain
ay = vx (ψ̇E + β̇)
Cαf cos δf + Cαr + mv̇x −Cαf lf cos δf + Cαr lr Cαf
= −β + ψ̇E + sin δf . (45)
m mvx m
From this it is clear that the measurement of the lateral acceleration contains
information about the ego vehicle states. Hence, the measurement equation cor-
responding to (43) is given by
1 ψ̇E
h = Cαf cos δf +Cαr +mv̇x
−Cαf lf cos δf +Cαr lr Cαf . (46)
−β m + ψ̇ E mv + m sin δ f
x
The vision system provides measurements of the road geometry and the ego vehi-
cle position on the road according to
h iT
y2 = c0m δrm w m lRm (47)
and the corresponding measurement equations are given by
h iT
h2 = c0 (δR + β) w lR . (48)
An obvious choice would have been to use the state δr , instead of the sum δR + β,
however, we have chosen to split these since we are interested in estimating both
of these quantities.
Before stating the main results in this section we outline how to estimate the pa-
rameters of the ego vehicle and how the filter is tuned. Subsequently we state the
results of the ego vehicle validation. We compare our road curvature estimates
with two other sensor fusion approaches as well as one road model.
5 Experiments and Results 151
0.2
Estimate
−0.1
−0.2
0 10 20 30 40 50 60 70 80
Time [s]
4
Lateral Acceleration [m/s2]
Estimate
Measurement
2
−2
−4
0 10 20 30 40 50 60 70 80
Time [s]
ical intuition of the error in the process equations and the measurement signals.
In a second step, the covariance parameters were tuned simply by trying to min-
imize the root mean square error (rmse) of the estimated ĉ0 and the reference
curvature c0 . The estimated curvature was obtained by running the filter using
the estimation data set. The calculation of the reference value is described in Ei-
dehall and Gustafsson (2006). The chosen design parameters were validated on
a different data set and the results are discussed in the subsequent sections.
0.2
m
Measurement ΨE
0.15
Estimate ψ
E
0.05
−0.05
−0.1
−0.15
0 10 20 30 40 50 60 70 80
Time [s]
(a)
0.03
0.02
Float Angle β [rad]
0.01
−0.01
−0.02
−0.03
0 10 20 30 40 50 60 70 80
Time [s]
(b)
Figure 6: A comparison between the ego vehicle’s measured (gray) and esti-
mated yaw rate (black dashed) using the sensor fusion approach in this pa-
per is shown in (a). The estimated float angle β for the same data sequence
is shown in (b).
−3
x 10
10
Reference
8 Fusion 1
Fusion 2
6 Fusion 3
Model
Curvature [1/m] 4 OLR
−2
−4
−6
−8
0 10 20 30 40 50 60 70 80
Time [s]
Figure 7: Results from the three fusion approaches (fusion 1 solid black line,
fusion 2 gray line and fusion 3 dotted line) and the olr (dashed gray line),
showing the curvature estimate ĉ0 . As can be seen, the curvature estimate
can be improved by taking the other vehicles (gray line) and the ego vehicle’s
driven curvature in to account (solid black line). The model (dash-dotted)
is estimating the derivative of the curvature and the absolute position is not
measured, which leads to the illustrated bias. The dashed line is the refer-
ence curvature.
The curvature estimate from the state-space model described in this paper is de-
noted by model and is shown as a dash-dotted black line. The absolute position
is not measured, which leads to a clearly visible bias in the estimate of c0 . The
bias is transparent in Figure 7, but it also leads to a large rmse value in Table 1.
Fusion 3 also delivers a decent result, but it is interesting to notice that the esti-
mate seems to follow the incorrect olr at time 35 s. The same behavior holds for
fusion 2 in Figure 7.
To get a more aggregate view of the performance, we provide the root mean
square error (rmse) for longer measurement sequences in Table 1. The fusion
approaches improve the road curvature estimate by making use of the informa-
tion about the leading vehicles, that is available from the radar and the vision
systems. However, since we are interested in the curvature estimate also when
there are no leading vehicles in front of the ego vehicle, this case will be studied
as well. It is straightforward to study this case, it is just a matter of not provid-
ing the measurements of the leading vehicles to the algorithms. The rmse values
found without information about the leading vehicles are given in the columns
marked no in Table 1.
These results should ideally be compared to data where information about the
leading vehicles is considered, but during the 78 min drive there were not always
another car in front of us. Only for about 50 % of the time there existed other
vehicles, which we could track. Hence, for the sake of comparability we give the
rmse values for those sequences where at least one leading vehicle was tracked,
bearing in mind that these are based on only about 50 % of the data. The cor-
responding columns in Table 1 are marked only. Finally, we also give the rmse
5 Experiments and Results 155
(a)
(b)
Figure 8: Two different camera views are shown. In (a) the lane markings
are excellent and the leading vehicles are close and clearly visible. This is
the traffic situation at 32 s in the Figures 5 to 7. Although the circumstances
seem perfect, the olr, Fusion 2 and 3 have problems estimating the curva-
ture, as seen in Figure 7. The traffic situation shown in (b) is more demand-
ing, mainly due to the weather conditions and large distance to the leading
vehicle.
values for the complete data, where other vehicles were considered whenever pos-
sible.
It is interesting to see that the advantage of fusion 1, which uses a more accurate
ego vehicle and road model, in comparison to fusion 2 is particularly noticeable
when driving alone on a rural road, the rmse for fusion 1 is then 1.18, whereas
the rmse for fusion 2 is 2.91. The reason for this is first of all that we are driving
on a rather curvy road which implies that any additional information will help
improving the curvature estimate. Here, the additional information is the im-
proved ego vehicle and road models used in fusion 1. Furthermore, the fact that
there are no leading vehicles that could aid the fusion algorithm when driving
alone creates a greater disadvantage for fusion 2, since it is its main additional
156 Paper B Joint Ego-Motion and Road Geometry Estimation
Table 1: Comparison of the root mean square error (rmse) of the road curva-
ture c0 in [1/m] for the three fusion approaches and the pure measurement
signal olr for two longer measurement sequences acquired on public roads
in Sweden. Three cases were considered, using only those measurements
where a leading vehicle could be tracked, using the knowledge of the lead-
ing vehicles position whenever possible or not at all and thereby simulating
the lonely driver. Note that all rmse values should be multiplied by 10−3 .
information. Fusion 3, which uses the single track vehicle model of fusion 1, but
the road model of fusion 2, seems to position itself between those two.
Comparing the rural road results based only on those measurements where other
vehicles were tracked, we see an interesting pattern. The curvature estimate of
fusion 2 and fusion 3 is improved by the additional information, but the estimate
of fusion 1 is declined. The error values of the three fusion approaches are also
in the same range. The explanation of this behavior can be found by analyzing
the measurement sequences. If the leading vehicle is close-by, as for example in
Figure 8a, it helps improving the results. However, if the leading vehicle is more
distant, the curvature at this position might not be the same as it is at the ego vehi-
cle’s position, which leads to a degraded result. In Lundquist and Schön (2008a)
the authors presented preliminary results based on much shorter measurement
sequences, where the leading vehicles were more close-by and the estimate of
fusion 1 was improved by the existence of leading vehicles. The problem could
be solved by letting the measurement noise e of the measurement equation (51)
depend on the distance to the leading vehicle.
The highway is rather straight and as expected not much accuracy could be gained
in using an improved dynamic vehicle model. It is worth noticing that the olr’s
rural road rmse value is about 10 times higher than the highway value, but the
model’s rmse increases only about six times when comparing the rural road val-
ues with the highway. Comparing the rmse values in the columns marked pos-
sible; the rmse for fusion 1 also increases about six times, but that of fusion 2
increases as much as twelve times when comparing the highway measurements
with the rural road.
A common problem with these road estimation methods is that it is hard to dis-
tinguish between the case when the leading vehicle is entering a curve and the
6 Conclusions 157
case when the leading vehicle is performing a lane change. With the approach in
this paper the information about the ego vehicle motion, the olr and the leading
vehicles is weighted together in order to form an estimate of the road curvature.
The fusion approach in this paper produces an estimate of the lateral position
lTn of the leading vehicle which seems reasonable. The results are thoroughly
described in Lundquist and Schön (2008a).
6 Conclusions
In this contribution we have derived a method for joint ego-motion and road
geometry estimation. The presented sensor fusion approach combines the infor-
mation from sensors present in modern premium cars, such as radar, camera
and imu, with a dynamic model. This model, which consists of a new dynamic
motion model of the road, is the core of this contribution. The road geometry
is estimated by considering the information from the optical lane recognition of
the camera, the position of the leading vehicles, obtained by the radar and the
camera, and by making use of a dynamic ego vehicle motion model, which takes
imu-data and the steering wheel angle as input. If one of these three parts fails,
for example there might not be any leading vehicles or the lane markings are bad,
as in Figure 8b, then the sensor fusion framework will still deliver an estimate.
The presented sensor fusion framework has been evaluated together with two
other fusion approaches on real and relevant data from both highway and rural
roads in Sweden. The data consists of 78 min driving on various road conditions,
also including snow-covered pavement. The approach presented in this paper ob-
tained the best results in all situations, when compared to the other approaches,
but it is most prominent when driving alone on a rural road. If there are no
leading vehicles that can be used, the improved road and ego vehicle models still
supports the road geometry estimation and delivers a more accurate result.
158 Paper B Joint Ego-Motion and Road Geometry Estimation
Bibliography
B. D. O. Anderson and J. B. Moore. Optimal Filtering. Information and system
science series. Prentice Hall, Englewood Cliffs, NJ, USA, 1979.
Y. Bar-Shalom, X. Rong Li, and T. Kirubarajan. Estimation with Applications to
Tracking and Navigation. John Wiley & Sons, New York, NY, USA, 2001.
R. Behringer. Visuelle Erkennung und Interpretation des Fahrspurverlaufes
durch Rechnersehen für ein autonomes Straßenfahrzeug, volume 310 of
Fortschrittsberichte VDI, Reihe 12. VDI Verlag, Düsseldorf, Germany, 1997.
Also as: PhD Thesis, Universität der Bundeswehr, 1996.
F. Bengtsson and L. Danielsson. Designing a real time sensor data fusion system
with application to automotive safety. In Proceedings of the World Congress
on Intelligent Transportation Systems and Services, New York, USA, November
2008.
S. S. Blackman and R. Popoli. Design and Analysis of Modern Tracking Systems.
Artech House, Norwood, MA, USA, 1999.
E. D. Dickmanns. Dynamic Vision for Perception and Control of Motion.
Springer, London, UK, 2007.
E. D. Dickmanns and B. D. Mysliwetz. Recursive 3-D road and relative ego-state
recognition. IEEE Transactions on pattern analysis and machine intelligence,
14(2):199–213, February 1992.
E. D. Dickmanns and A. Zapp. A curvature-based scheme for improving road
vehicle guidance by computer vision. In Proceedings of the SPIE Conference
on Mobile Robots, volume 727, pages 161–198, Cambridge, MA, USA, 1986.
A. Eidehall. Tracking and threat assessment for automotive collision avoidance.
PhD thesis No 1066, Linköping Studies in Science and Technology, Linköping,
Sweden, January 2007.
A. Eidehall and F. Gustafsson. Obtaining reference road geometry parameters
from recorded sensor data. In Proceedings of the IEEE Intelligent Vehicles
Symposium, pages 256–260, Tokyo, Japan, June 2006.
A. Eidehall, J. Pohl, and F. Gustafsson. Joint road geometry estimation and vehicle
tracking. Control Engineering Practice, 15(12):1484–1494, December 2007.
A. Gern, U. Franke, and P. Levi. Advanced lane recognition - fusing vision and
radar. In Proceedings of the IEEE Intelligent Vehicles Symposium, pages 45–51,
Dearborn, MI, USA, October 2000.
A. Gern, U. Franke, and P. Levi. Robust vehicle tracking fusing radar and vision.
In Proceedings of the international conference of multisensor fusion and inte-
gration for intelligent systems, pages 323–328, Baden-Baden, Germany, August
2001.
Bibliography 159
W. J. Rugh. Linear System Theory. Information and system sciences series. Pren-
tice Hall, Upper Saddle River, NJ, USA, 2 edition, 1996.
S. F. Schmidt. Application of state-space methods to navigation problems. Ad-
vances in Control Systems, 3:293–340, 1966.
T. B. Schön. Estimation of Nonlinear Dynamic Systems – Theory and Applica-
tions. PhD thesis No 998, Linköping Studies in Science and Technology, De-
partment of Electrical Engineering, Linköping University, Sweden, February
2006.
R. Schubert, G. Wanielik, and K. Schulze. An analysis of synergy effects in an
omnidirectional modular perception system. In Proceedings of the IEEE Intel-
ligent Vehicles Symposium, pages 54–59, Xi’an, China, June 2009.
G. L. Smith, S. F. Schmidt, and L. A. McGee. Application of statistical filter the-
ory to the optimal estimation of position and velocity on board a circumlunar
vehicle. Technical Report TR R-135, NASA, 1962.
J. Sparbert, K. Dietmayer, and D. Streller. Lane detection and street type clas-
sification using laser range images. In Proceedings of the IEEE Conference on
Intelligent Transportation Systems, pages 454–459, Oakland, CA, USA, August
2001.
B. O. S. Teixeira, J. Chandrasekar, L. A. B. Torres, L. A. Aguirre, and D. S. Bern-
stein. State estimation for equality-constrained linear systems. In Proceedings
of the IEEE Conference on Decision and Control, pages 6220–6225, New Or-
leans, LA, USA, December 2007.
A. Watanabe, T. Naito, and Y. Ninomiya. Lane detection with roadside structure
using on-board monocular camera. In Proceedings of the IEEE Intelligent Ve-
hicles Symposium, pages 191–196, Xi’an, China, June 2009.
A. Wedel, U. Franke, H. Badino, and D. Cremers. B-spline modeling of road sur-
faces for freespace estimation. In Proceedings of the IEEE Intelligent Vehicles
Symposium, pages 828–833, Eindhoven, The Netherlands, June 2008.
H. Weigel, P. Lindner, and G. Wanielik. Vehicle tracking with lane assignment by
camera and Lidar sensor fusion. In Proceedings of the IEEE Intelligent Vehicles
Symposium, pages 513–520, Xi’an, China, June 2009.
W. S. Wijesoma, K. R. S. Kodagoda, and A. P. Balasuriya. Road-boundary de-
tection and tracking using ladar sensing. IEEE Transactions on Robotics and
Automation, 20(3):456–464, June 2004.
J. Y. Wong. Theory Of Ground Vehicles. John Wiley & Sons, New York, USA, 3
edition, 2001.
Z. Zomotor and U. Franke. Sensor fusion for improved vision based lane recogni-
tion and object tracking with range-finders. In Proceedings of the IEEE Confer-
ence on Intelligent Transportation Systems, pages 595–600, Boston, MA, USA,
November 1997.
Paper C
Extended Target Tracking Using
Polynomials With Applications to
Road-Map Estimation
Abstract
This paper presents an extended target tracking framework which
uses polynomials in order to model extended objects in the scene of in-
terest from imagery sensor data. State space models are proposed for
the extended objects which enables the use of Kalman filters in track-
ing. Different methodologies of designing measurement equations are
investigated. A general target tracking algorithm that utilizes a spe-
cific data association method for the extended targets is presented.
The overall algorithm must always use some form of prior informa-
tion in order to detect and initialize extended tracks from the point
tracks in the scene. This aspect of the problem is illustrated on a real
life example of road-map estimation from automotive radar reports
along with the results of the study.
1 Introduction
This contribution relates to tracking applications where a sensor platform ob-
serves objects in local coordinates (x,y,z). We focus on the case of a moving sen-
sor platform and stationary objects, but the framework can be generalized to any
target tracking scenario. Some of these detected objects are points, while others
are extended objects. Tracking point shaped objects have been the main focus in
the tracking literature for a long time Blackman and Popoli (1999); Bar-Shalom
and Li (1995). In particular in the computer vision literature, tracking extended
objects has become popular during the last decades. The literature models ex-
tended objects as closed contours, like simple geometrical shapes as rectangles
and ellipses, or arbitrary shapes as splines Bartels et al. (1987) and active con-
tours Blake and Isard (1998). We propose to complement these models of ex-
tended objects with detection and data association methods for sensors providing
point measurements. Letting x be the longitudinal, y the lateral and z the vertical
165
166 Paper C Extended Target Tracking Using Polynomials
direction, possible applications include the following three automotive and two
naval examples:
• Road curvature models y = f (x; θ) based on lane markers detected by a
vision sensor. Such models are needed in all future collision avoidance sys-
tems, in particular lane assist systems Gustafsson (2009).
• Similar extended objects along the road side y = f (x; θ) based on radar
mainly. Such a model is a useful complement to the vision based road
model above, or for autonomous vehicles driving in unstructured environ-
ments. This is our application example in Section 6.
• Road inclination models z = f (x; θ) based on a combination of vision and
radar with good azimuth resolution. This can be used in look-ahead control
Hellström (2010) for fuel efficient cruise controllers.
• Shore models x = f (y; θ) based on a radar to describe the shape of islands
and parts of the coastline. This can be used in robust navigation systems
based on map matching, see for instance the extended approach in Karlsson
and Gustafsson (2006); Svensson (2009).
• Vertical shape models z = f (y; θ) based on a camera describing the altitude
variations, for instance, of an island as seen from the sensor platform. Ap-
plications are similar to the previous point.
The common theme in these examples is that the model is parameterized in a
given model class (we will study polynomials), and that both the input and out-
put are observed variables, leading to an errors in variables (eiv) Söderström
(2007) problem. This is, to the best of the authors knowledge, an original ap-
proach to describe extended objects. We derive a modified measurement up-
date for the eiv model, and demonstrate its increased accuracy compared to the
straightforward errors in output (eio) approximation for filtering applications.
The detection procedure requires some form of prior information on the shape
of the extended object because many different models can suit the same set of
measurements.
This paper is outlined as follows. We begin with an overview of the related liter-
ature in Section 2. Connections to several different fields of research are pointed
out and this makes this section fairly long. However, the subsequent sections are
organized such that the uninterested reader can skip this section without causing
a loss of understanding for the the rest of the paper. A basic problem formula-
tion of point and extended target tracking using polynomials as extended objects
is given in Section 3. The state space representations that we are going to use
in extended target tracking are introduced in Section 4. Our general algorithm
for tracking point and extended targets is summarized in Section 5. Section 6
introduces the practical application. We apply the ideas presented in earlier sec-
tions to the road map estimation problem utilizing the automotive radar reports.
The experiments done and the results obtained are presented in Section 6.3. The
paper is concluded in Section 7.
2 Related Literature 167
2 Related Literature
Extended target tracking has been studied in the literature for some years and
we give a brief overview in Section 2.1. Section 2.2 summarizes a couple of esti-
mation methods proposed earlier for curves and contours. One of our proposed
solutions is stated to be related to an estimation framework called as errors in
variables problem and some references for this are given in Section 2.3. Finally,
different solutions related to our motivating application example of road edge
estimation are discussed in Section 2.4.
cess to maintain track on the target when it is close to other objects. An elliptical
target model, to represent an extended target or a group of targets, is proposed
in Drummond et al. (1990). The idea is improved in Salmond and Parr (2003)
with a solution based on ekf, in Ristic and Salmond (2004) based on ukf and
in Angelova and Mihaylova (2008) with a solution based on a Monte Carlo (mc)
algorithm.
fel and Zha (1993); Boley and Sutherland (1993); De Moor (1993), in the survey
paper Markovsky and van Huffel (2007) and in the textbook Björck (1996).
2.4 Application
An important part of this contribution is the application of the ideas to the real
world example of road map estimation using automotive radar sensor reports.
In this context, the point and extended targets existing in the scene would repre-
sent e.g., lamp posts and guardrails along the road, respectively. Our earlier work
Lundquist et al. (2009) contains the findings from similar tracking scenarios. This
also connects our work to the approaches presented in the literature for the prob-
lem of road edge estimation. The third order approximation of the two sided
(left and right) “clothoid model” has been used in connection with Kalman fil-
ters in Kirchner and Heinrich (1998) and Polychronopoulos et al. (2004) for laser
scanner measurements and radar measurements, respectively. In Lundquist and
Schön (2009) two road edge models are proposed, one of which is very similar
to the model proposed in Polychronopoulos et al. (2004), and used a constrained
quadratic program to solve for the parameters. A linear model represented by its
midpoint and orientation (one for each side of the road) is utilized by Wijesoma
et al. (2004) with lidar sensing for tracking road-curbs. Later, the results of Wi-
jesoma et al. (2004) were enhanced in Kodagoda et al. (2006) with the addition
of image sensors. A similar extended Kalman filtering based solution is given
in Fardi et al. (2003), where a circular road edge modeling framework is used.
Recently, the particle filters (also referred to as condensation in image and video
processing) have been applied to the road edge estimation problem in Wang et al.
(2008) with an hyperbolic road model.
3 Problem Formulation
The examples mentioned in Section 1 all involve 2-dimensional extended objects,
modeled by any configuration of two local coordinates (x, y or z). In the following
parts of the paper, we describe all models in the x-y-plane without any loss of
generality, i.e., the coordinates are easily exchanged to describe objects in any
other space.
Suppose we are given the sensor measurements in batches of Cartesian x and y
coordinates as follows:
(i)
h iT Nzk
zk , x(i) y(i) (1)
k i=1
for discrete time instants k = 1, . . . , K. In many cases in reality (e.g., radar, laser
and stereo vision) and in the practical application considered in this work, the
sensor provides range r and azimuth angle ψ given as
(i)
h i T Nz k
z̄k , r (i) ψ (i) . (2)
k i=1
In such a case we assume that some suitable standard polar to Cartesian conver-
170 Paper C Extended Target Tracking Using Polynomials
sion algorithm is used to convert these measurements into the form (1).
The measurements z are noisy point measurements originating from one of the
following sources
• False detections
The state models considered in this contribution are described, in general, by the
state space equations
xk+1 = f (xk , uk ) + wk , (6a)
yk = h(xk , uk ) + ek , (6b)
where x, u and y denotes the state, the input signal, and the output signal, while
w ∼ N (0, Q) and e ∼ N (0, R) are the process and measurement noise, respec-
tively. The use of an input signal is explained in Section 4.1. The time index is
denoted with k.
One of the main contributions of our work is the specific state space represen-
tation we propose for extended targets which is presented in Section 4. A poly-
nomial is generally difficult to handle in a filter, since the noisy measurements
are distributed arbitrarily along the polynomial. In this respect, the measure-
ment model (6b) contains parts of the actual measurement vector as parameters.
For the sake of simplicity, the tracked objects are assumed stationary, resulting
in very simple motion models (6a). However, the motion or process model may
easily be substituted and chosen arbitrarily to best fit its purpose.
(i) P N
The aim is to obtain posterior estimates of the point sources {xP,k|k }i=1 and the
k
(i) Nz
(i) NL
extended sources {xL,k|k }i=1 given all the measurements {z` }i=1` recursively
`=1
in time.
4 State Space Representation for an Extended Object 171
This section first investigates the measurement model to be used with extended
sources in Section 4.1 and then makes short remarks about the state dynamics
equation for polynomials in Section 4.2.
This section describes how a point measurement z relates to the state xL of an ex-
tended object. For this purpose, we derive a measurement model in the form (6b),
which describes the relation between the state variables xL , defined in (5), and
output signals y and input signals u. Notice that, for the sake of simplicity, we
also drop the subscripts k specifying the time stamps of the quantities.
covariance
Σp = diag(σr2 , σψ2 ) (13)
into Cartesian coordinates, which is a rather standard procedure. Note that, in
such a case, the resulting Cartesian measurement covariance Σc is, in general, not
necessarily diagonal and hence Σxy of (12) might be non-zero.
Since the model (9) is conditionally linear given the measurements, the Kalman
filter measurement update formulas can be used to incorporate the information
in z into the extended source state xL . An important question in this regard is
what would be the measurement covariance of the measurement noise term ea in
(9). This problem can be tackled in two ways.
Although the input terms defined in (8) are measured quantities (and hence af-
fected by the measurement noise), and therefore the model parameters Ha (u) are
uncertain, in a range of practical applications where parameters are obtained
from measurements, such errors are neglected. Thus, the first scheme we present
here neglects all the errors in Ha (u). In this case, it can easily be seen that
ea = ỹ (14)
and therefore the covariance Σa of ea is
Σa = Σy . (15)
This type of approach was also used in our previous work Lundquist et al. (2009)
which presented earlier versions of the findings in this paper.
Neglecting the errors in the model parameters Ha (u) can cause overconfidence in
the estimates of recursive filters and can actually make data association difficult
in tracking applications (by causing too small gates). We, in this second scheme,
use a simple methodology to take the uncertainties in Ha (u) into account in line
with eiv framework. Assuming that the elements of the noise free quantity z0
satisfy the polynomial equation exactly, we get
y − ỹ = Ha (u − ũ)xa , (16a)
h i
y − ỹ = 1 x − x̃ (x − x̃)2 ··· (x − x̃)n xa , (16b)
which can be approximated using a first order Taylor expansion resulting in
y ≈ Ha (u)xa − Hea (u)x̃xa + ỹ (17a)
" #
x̃
= Ha (u)xa + h̃a (xa , u) , (17b)
ỹ
with
h i
Ha (u) = 1 x x2 ··· xn , (17c)
4 State Space Representation for an Extended Object 173
h i
Hea (u) = 0 1 2x · · · nxn−1 , (17d)
h i
h̃a (xa , u) = −a1 − 2a2 x − · · · − nan xn−1 1 . (17e)
Hence, the noise term ea of (9) is given by
" #
x̃
ea = ỹ − Ha x̃xa = h̃a (xa , u)
e (18)
ỹ
and its covariance is given by
Σa = E(ea eTa ) = Σy + H
ea xa Σx xTa H
eaT − 2H
ea xa Σxy
= h̃a (xa , u)Σc h̃Ta (xa , u). (19)
Note that the eiv covariance Σa depends on the state variable xa .
Example
An example is used to compare the performances of the eio and the eiv schemes.
A second order polynomial with the true states
h iT h iT
xa = a0 a1 a2 = −20 −0.5 0.008 (20)
is used and 100 uniformly distributed measurements are extracted in the range
x = [0, 200]. The measurements are given on polar form as in (2) and zero mean
Gaussian measurement noise with covariance as in (13) is added using the param-
eters
Sensor 1: σr1 = 0.5, σψ1 = 0.05, (21a)
Sensor 2: σr2 = 10, σψ2 = 0.05, (21b)
Sensor 3: σr3 = 10, σψ3 = 0.005, (21c)
to simulate different type of sensors. Sensor 1 represents a sensor with better
range than bearing accuracy, whereas the opposite holds for sensor 3. Sensor
2 has about the same range and bearing accuracies. The true polynomial and
the measurements are shown in Figure 1. The measurements are transformed
into Cartesian coordinates. The following batch methods (Nzk = 100, K = 1) are
applied to estimate the states
• Weighted least squares (wls eiv) with eiv covariance. The state xa used
in (19) is estimated through a least squares solution in advance.
• Kalman filter (kf eiv) with eiv covariance. The predicted state estimate
x̂a,k|k−1 is used in (19) to derive Ra,k .
174 Paper C Extended Target Tracking Using Polynomials
200
150
100
50
0 sensor
sensor 1
−50 sensor 2
sensor 3
Figure 1: The true polynomial and the extracted measurements are shown.
Covariance ellipses are drawn for a few measurements to show the direction
of the uncertainties.
• Unscented Kalman filter (ukf eiv) with sigma points derived by augment-
ing the state vector with the noise terms
h iT
z̃ = ũ ỹ , z̃ ∼ N (0, Σc ), (22)
to consider the error in all directions (as in the eiv case), and to deal with
the nonlinear transformations of the noise terms.
The covariance of the process noise is set to zero, i.e., Q = 0, since the target is
not moving. The initial conditions of the state estimate are selected as
h iT
x̂a,0 = 0 0 0 , (23a)
2
σ2
!
Pa,0 = a diag(xa ) , (23b)
κ
where κ = 3 and σa2 = 8. Note that every estimate’s initial uncertainty is set to be
a scaled version of its true value in (23b).
The rmse values for 1000 Monte Carlo (mc) simulations are given in Table 1.
The rmse of the eiv schemes is clearly lower than the other methods, especially
for sensor 1 and 3 with non-symmetric measurement noise. This result justifies
the extra computations required for calculating the eiv covariance. There is only
a small difference in the performance between the kf eiv and the ukf eiv for
the second order polynomial. This is a clear indication of that the simple Taylor
series approximation used in deriving the eiv covariance is accurate enough.
4 State Space Representation for an Extended Object 175
Table 1: rmse values for the extended object in Figure 1. The sensor config-
urations are defined in (21)
1 Remark (Robustness). We use only Gaussian noise representations in this paper which
would directly connect our work to the (implicit) minimization of ls-type cost functions
which are known to be non-robust against outliers. The algorithms we are going to pro-
pose for estimation are going to be protected, to some extent, against this by classical
techniques like gating Blackman and Popoli (1999); Bar-Shalom and Li (1995). Extra ro-
bustness features can be accommodated by the use of Huber Huber and Ronchetti (2009)
and `1 norms etc. in the estimation which were considered to be outside the scope of this
paper.
This shrinking behavior for the polynomials allows for automatic adjustment of
the start and end points of the polynomials according to the incoming measure-
ments.
Some dynamics is included into the process model of the polynomials for the
start and the end point components of the state, xstart and xend .
the objects in the environment. Hence, the number of each type of objects must
also be estimated by the tracking algorithm.
• Track deletion. This operation deletes the old tracks that have not been
associated to any measurements for a significant amount of time.
(i)
where ẑP,k|k−1 is the predicted measurement of the point Pi according to the
(i)
model (39) and SP,k|k−1 is its covariance (innovation covariance) in the Kalman
(i)
filter. The gate GP is defined as the region
( T −1 )
(i) (i) (i) (i)
GP , z z − ẑP,k|k−1 SP,k|k−1 z − ẑP,k|k−1 ≤ δP (30)
Having calculated the likelihood values, two matrices of likelihood values are
formed, one matrix ΓP ∈ RNz ×NP with the combinations of observations and points,
according to (29), and one matrix ΓL ∈ RNz ×NL with the combinations of observa-
tions and lines, according to (31).
The association procedure using ΓP and ΓL must be quite unconventional because
in conventional multi-target tracking, one of the well-known assumptions is that
at most a single measurement can originate from a target. However, obviously,
in our problem polynomials can result in multiple measurements. On the other
hand, we still have the assumptions that no two measurements may originate
from the same point source and no two sources may give rise to the same mea-
surements.
Our association mechanism which uses nearest neighbor type ideas with likeli-
hood ratio tests is summarized as follows: First find the the maximum value of ΓP
and call the corresponding point state imax and measurement mmax . Then, find
the maximum value of the mth row, corresponding to measurement mmax of ma-
trix ΓL and call the corresponding polynomial state jmax . The likelihood ratio
5 Multi-Target Tracking Algorithm 179
with respect to the world reference frame W where the superscripts are sup-
(j)
pressed in the vector ξL for simplicity.
The measurements from the sensor mounted on the vehicle are obtained in polar
coordinates (as in (2)) and need to be transformed first into the Cartesian coor-
dinates of the sensor’s frame Es and then into the extended source’s coordinate
frame in order to be used. The measurement, expressed in the extended sources
coordinate frame L in Cartesian coordinates is given by
zL = T LEs
(zEs , xE , ξL ), (38)
where the transformation T LEsis described in the Appendix. Note that the mea-
surement zL , which fits into the framework discussed in Section 4.1, is now not
only affected by the original measurement zEs , but also by the position of the ego
vehicle, given by the state variable xE , and the origin and orientation of the lanes
coordinate frame ξL . We refer to the Appendix for details about the covariance
calculation for zL involving the transformation (38).
era, an inertia sensor and the motion of other vehicles tracked by the radar. This
implies that the camera easily can be removed and that the prior solely is based
on the motion model of the ego vehicle and other moving or stationary objects
tracked by the radar. The parameters in (40) can be interpreted as physical sizes.
The angle between the longitudinal axis of the vehicle and the road lane is ψRE .
It is assumed that this angle is small and hence the approximation sin ψRE ≈ ψRE
is used. The curvature parameter is denoted by c0 and the offset between the ego
vehicle and the white lane is denoted by lE .
All point state estimates x̂Pi are transformed into the ego vehicles coordinate
frame since the priors’s geometry (40) is given in this frame. We consider hy-
pothetical parabolas passing through each point x̂Pk parallel to the prior (40), i.e.,
the parameters ψRE and c0 are just inherited from the lane tracker and the lateral
distance lPk is given by
c 2
lPk = ŷPEk − ψRE x̂PEk − 0 x̂PEk . (41)
2
The likelihood `Pi Pk that a point xPi is on the hypothetical line of point Pk is then
given by
E E
N Pi Pk ; 0, PPk ,(2,2) , if x̂Pi ∈ GPk
`Pi Pk = (42)
0,
otherwise,
where the lateral distance between the point Pi and the proposed new line of
point Pk is given by
ik = ŷPEi − ŷPEk , (43)
with
c0 E 2
ŷPEk = lPk + ψRE x̂PEi + x̂ . (44)
2 Pi
The notation PPE ,(2,2) refers to the lower-right element, i.e., the variance in the
k
diagonal corresponding to yE . The gate GPk is defined as
E 2
" #
x y − ŷPk
E
GP k , ≤ δ , −δ < x − x̂ < δ . (45)
L s P e
y E k
PP ,(2,2)
k
(a)
80 80
70 70
60 60
50 50
40 40
xE [m]
xE [m]
30 30
20 20
10 10
0 0
−10 −10
−20 −20
−30 −20 −10 0 10 −30 −20 −10 0 10
E
y [m] yE [m]
(b) (c)
Figure 2: A traffic situation is shown in Figure (a). Figure (b) shows the
radar measurements, and Figure (c) the resulting tracked points and lines.
The circle in the origin is the ego vehicle, the square is the tracked vehicle in
front and the dashed gray lines illustrate the tracked road curvature.
6 Application Example and Use of Prior Information 185
(a) (b)
80 80
70 70
60 60
50 50
40 40
xE [m]
xE [m]
30 30
20 20
10 10
0 0
−10 −10
−20 −20
−20 −10 0 10 20 −20 −10 0 10 20
yE [m] yE [m]
(c) (d)
Figure 3: Freeway exit with guardrails, the camera view is shown in Fig-
ure (a) and the bird’s eye view with the estimated states in Figure (c). A
traffic scenario from a rural road, with guardrails on both sides of a bridge is
shown in Figure (d) and (b).
186 Paper C Extended Target Tracking Using Polynomials
Table 2: mae values for the estimated lines based on radar measurements
and the lane estimate given by the computer vision, both with respect to the
driven trajectory.
7 Conclusion
In this contribution we have considered the use of polynomials in extended tar-
get tracking. State space representations that enable the use of Kalman filters for
the polynomial shaped extended objects are introduced. We have also described
a multi-target tracking algorithm which is as general as possible. The loss of gen-
erality of the algorithm we presented lies in that the detection and initialization
of the extended tracks from point tracks would always require some application
dependent prior information. In the real world application example we have
presented, we tried to be as illustrative as possible about the use of this prior
information.
The approach has been evaluated on real and relevant data from both freeways
and rural roads in Sweden. The results are not perfect, but surprisingly good at
times, and of course contain much more information than just the raw measure-
ments. Furthermore, the standard state representation of the objects should not
be underestimated since it is compact and easy to send on a vehicle can-bus.
Some promising future investigations include the use of non-thresholded radar
data in a track-before-detect type of curve estimation and better representation
of curves in terms of intrinsic coordinates.
A Appendix
The need for a transformation from the sensor’s frame Es into the extended source’s
coordinate frame L was accentuated in (38) and described here in detail. The
transformation T LEs (zEs , xE , ξL ) is given by
zL = RLE REEs zEs + dEEs E + RLW (dEW
W W
− dLW ), (47)
where the displacement vector dEEs E is the mounting position of the sensor in
the vehicles coordinate frame, the rotation matrix REEs describes the mounting
orientation of the sensor in the vehicle and zEs is the Cartesian measurement
given by the sensor.
The covariance is derived by first extracting the noise term from the stochastic
A Appendix 187
variables according to
x̂E = xE + x̃E , x̃E ∼ N (0, PE ) (48a)
ξ̂L = ξL + ξ̃L , ξ̃L ∼ N (0, PξL ) (48b)
for the ego vehicle’s state variable xE and the origin of the line’s coordinate frame
ξL . The noise term of the sensor measurement z̃Es was defined in (11). Equation
(47) can now be rewritten according to
zL = RbLE REEs ẑEs + d E + R
Es E
bLW (dbW − dbW )
EW LW
bLE REEs z̃Es + A2 x̃E + A3 ξ̃L ,
+R (49a)
where the rotation matrices are given by
" #
cos ψ̂L sin ψ̂L −yEs cos ψ̂EL − xEs sin ψ̂EL
A2 , , (49b)
− sin ψ̂L cos ψ̂L xEs cos ψ̂EL − yEs sin ψ̂EL
− cos ψ̂L − sin ψ̂L a(1,3)
3
A3 , (2,3)
, (49c)
sin ψ̂L − cos ψ̂L a3
and where
(1,3)
a3 = yEs cos ψ̂EL + (yW W
EW − yLW ) cos ψ̂L
+ xEs sin ψ̂EL − (xW W
EW − xLW ) sin ψ̂L , (49d)
(2,3)
a3 = −xEs cos ψ̂EL − (xW W
EW − xLW ) cos ψ̂L
+ yEs sin ψ̂EL − (yW W
EW − yLW ) sin ψ̂L . (49e)
To summarize these calculations the covariance of zL is given by
E
ΣcL = R
bLEs Σc s (R
bLEs )T + A2 PE AT + A3 Pξ AT
2 L 3
(50)
E
where Σc s is the Cartesian measurement covariance, PE is the state covariance of
the ego vehicles pose and PξL is the line state covariance corresponding to the
position and orientation of the line’s coordinate frame.
188 Paper C Extended Target Tracking Using Polynomials
Bibliography
D. Angelova and L. Mihaylova. Extended object tracking using Monte Carlo meth-
ods. IEEE Transactions on Signal Processing, 56(2):825–832, February 2008.
Y. Bar-Shalom and T. E. Fortmann. Tracking and Data Association. Mathematics
in science and engineering. Academic Press, Orlando, FL, USA, 1988.
Y. Bar-Shalom and X. R. Li. Multitarget-Multisensor Tracking: Principles, Tech-
niques. YBS Publishing, Storrs, CT, USA, 1995.
R. H. Bartels, J. C. Beatty, and B. A. Barsky. An introduction to splines for use
in computer graphics and geometric modeling. M. Kaufmann Publishers, Los
Altos, CA, USA, 1987. ISBN 0-934613-27-3 ;.
Å Björck. Numerical methods for least squares problems. SIAM, Philadelphia,
PA, USA, 1996.
S. S. Blackman and R. Popoli. Design and Analysis of Modern Tracking Systems.
Artech House, Norwood, MA, USA, 1999.
A. Blake and M. Isard. Active contours. Springer, London, UK, 1998.
Y. Boers, H. Driessen, J. Torstensson, M. Trieb, R. Karlsson, and F. Gustafsson.
Track-before-detect algorithm for tracking extended targets. IEE Proceedings
of Radar, Sonar and Navigation, 153(4):345–351, August 2006.
D. L. Boley and K. Sutherland. Recursive total least squares: An alternative to the
discrete Kalman filter. In AMS Meeting on Applied Linear Algebra, DeKalb, IL,
USA, May 1993.
B. De Moor. Structured total least-squares and L2 approximation-problems. Lin-
ear algebra and its applications, 188–189:163–207, 1993.
J. C. Dezert. Tracking maneuvering and bending extended target in cluttered
environment. In Proceedings of Signal and Data Processing of Small Targets,
volume 3373, pages 283–294, Orlando, FL, USA, April 1998. SPIE.
R. Diversi, R. Guidorzi, and U. Soverini. Algorithms for optimal errors-in-
variables filtering. Systems & Control Letters, 48(1):1–13, 2003.
R. Diversi, R. Guidorzi, and U. Soverini. Kalman filtering in extended noise envi-
ronments. IEEE Transactions on Automatic Control, 50(9):1396–1402, Septem-
ber 2005.
O. E. Drummond, S. S. Blackman, and G. C. Pretrisor. Tracking clusters and
extended objects with multiple sensors. In Proceedings of Signal and Data
Processing of Small Targets, volume 1305, pages 362–375, Orlando, FL, USA,
January 1990. SPIE.
B. Fardi, U. Scheunert, H. Cramer, and G. Wanielik. Multi-modal detection and
parameter-based tracking of road borders with a laser scanner. In Proceedings
Bibliography 189
of the IEEE Intelligent Vehicles Symposium, pages 95–99, Columbus, OH, USA,
June 2003.
K. Gilholm and D. Salmond. Spatial distribution model for tracking extended
objects. IEE Proceedings of Radar, Sonar and Navigation, 152(5):364–371, Oc-
tober 2005.
K. Gilholm, S. Godsill, S. Maskell, and D. Salmond. Poisson models for extended
target and group tracking. In Proceedings of Signal and Data Processing of
Small Targets, volume 5913, pages 230–241, San Diego, CA, USA, August 2005.
SPIE.
R. Guidorzi, R. Diversi, and U. Soverini. Optimal errors-in-variables filtering.
Automatica, 39(2):281–289, 2003. ISSN 0005-1098.
F. Gustafsson. Automotive safety systems. IEEE Signal Processing Magazine, 26
(4):32–47, July 2009.
E. Hellström. Look-ahead Control of Heavy Vehicles. PhD thesis No 1315, Lin-
köping Studies in Science and Technology, Linköping, Sweden, May 2010.
P. J. Huber and E. Ronchetti. Robust Statistics. John Wiley & Sons, New York, NY,
USA, 2009.
M. Isard and A. Blake. CONDENSATION-conditional density propagation for
visual tracking. International Journal of Computer Vision, 29(1):5–28, August
1998.
R. Karlsson and F. Gustafsson. Bayesian surface and underwater navigation. IEEE
Transactions on Signal Processing, 54(11):4204–4213, November 2006.
M. Kass, A. Witkin, and D. Terzopoulos. Snakes: Active contour models. Inter-
national Journal of Computer Vision, 1(4):321–331, January 1988.
A. Kirchner and T. Heinrich. Model based detection of road boundaries with
a laser scanner. In Proceedings of the IEEE Intelligent Vehicles Symposium,
pages 93–98, Stuttgart, Germany, October 1998.
K. R. S. Kodagoda, W. S. Wijesoma, and A. P. Balasuriya. CuTE: curb tracking and
estimation. IEEE Transactions on Control Systems Technology, 14(5):951–957,
September 2006.
S. Lazarus, A. Tsourdos, B.A. White, P.M.G. Silson, and R. Zandbikowski. Air-
borne vehicle mapping of curvilinear objects using 2-D splinegon. IEEE Trans-
actions on Instrumentation and Measurement, 59(7):1941–1954, July 2010.
L. Ljung. System identification, Theory for the user. System sciences series. Pren-
tice Hall, Upper Saddle River, NJ, USA, 2 edition, 1999.
C. Lundquist and T. B. Schön. Estimation of the free space in front of a moving
vehicle. In Proceedings of the SAE World Congress, SAE paper 2009-01-1288,
Detroit, MI, USA, April 2009.
190 Paper C Extended Target Tracking Using Polynomials
H. L. van Trees. Detection, Estimation, and Modulation Theory. John Wiley &
Sons, New York, NY, USA, 1968.
J. Vermaak, N. Ikoma, and S. J. Godsill. Sequential Monte Carlo framework for
extended object tracking. IEE Proceedings of Radar, Sonar and Navigation, 152
(5):353–363, October 2005.
Y. Wang, L. Bai, and M. Fairhurst. Robust road modeling and tracking using
condensation. IEEE Transactions on Intelligent Transportation Systems, 9(4):
570–579, December 2008.
M. J. Waxman and O. E. Drummond. A bibliography of cluster (group) tracking.
In Proceedings of Signal and Data Processing of Small Targets, volume 5428,
pages 551–560, Orlando, FL, USA, April 2004. SPIE.
W. S. Wijesoma, K. R. S. Kodagoda, and A. P. Balasuriya. Road-boundary de-
tection and tracking using ladar sensing. IEEE Transactions on Robotics and
Automation, 20(3):456–464, June 2004.
Paper D
Road Intensity Based Mapping using
Radar Measurements with a
Probability Hypothesis Density Filter
Preliminary version:
Technical Report LiTH-ISY-R-2994, Dept. of Electrical Engineering, Lin-
köping University, SE-581 83 Linköping, Sweden.
Road Intensity Based Mapping using Radar
Measurements with a Probability
Hypothesis Density Filter
∗ Dept.
of Electrical Engineering, ∗∗ Volvo
Car Corporation
Linköping University, Active Safety Electronics
SE–581 83 Linköping, Sweden SE-405 31 Göteborg, Sweden
[email protected], [email protected]
[email protected]
Abstract
Mapping stationary objects is essential for autonomous vehicles and
many autonomous functions in vehicles. In this contribution the prob-
ability hypothesis density (phd) filter framework is applied to auto-
motive imagery sensor data for constructing such a map, where the
main advantages are that it avoids the detection, the data associa-
tion and the track handling problems in conventional multiple-target
tracking, and that it gives a parsimonious representation of the map
in contrast to grid based methods. Two original contributions address
the inherent complexity issues of the algorithm: First, a data cluster-
ing algorithm is suggested to group the components of the phd into
different clusters, which structures the description of the prior and
considerably improves the measurement update in the phd filter. Sec-
ond, a merging step is proposed to simplify the map representation
in the phd filter. The algorithm is applied to multi-sensor radar data
collected on public roads, and the resulting map is shown to well de-
scribe the environment as a human perceives it.
1 Introduction
Autonomous vehicles and autonomous functionality in vehicles require situation
awareness. Situation awareness is traditionally split into two main tasks: track-
ing of moving objects and navigation relative to stationary objects represented by
a map. The precision in commercial maps and position services today is not suffi-
cient for autonomous functions. For that reason, imagery sensors as radar, vision
and laser scanners have been used to build local maps of stationary objects on the
fly, which requires sophisticated estimation algorithms. Similarly to the classic
target tracking application, going from single-sensor single-object estimation to
multi-sensor multi-object estimation increases the complexity of the algorithms
195
196 Paper D Road Intensity Based Mapping using Radar Measurements
substantially. For that reason, there is a strong need for structured maps rather
than point maps, where single objects that together form structures as lines or
curves are described as one extended object. This contribution describes an effi-
cient algorithm to create maps that are particularly useful to describe structures
along road sides. Such a map is promising for a range of applications, from colli-
sion avoidance maneuvers to true autonomy on public roads and off-road.
There exist many algorithms and representations of maps using imagery sensor
data. However, so far methods based on probabilistic theory are most success-
ful, see e.g., Thrun et al. (2005) or Adams et al. (2007) for a recent overview.
Feature based maps have become very popular in the related field simultaneous
localization and mapping (slam) Durrant-Whyte and Bailey (2006); Bailey and
Durrant-Whyte (2006), where a vehicle builds a map of environmental features,
while simultaneously using that map to localize itself. Location based maps,
such as the occupancy grid map (ogm) Elfes (1987), were primarily developed
to be used with laser scanners to generate consistent maps. They have also been
used with radar sensors, where the data comprises a complete signal power pro-
file Mullane et al. (2009); Foessel-Bunting et al. (2001), or a thresholded radar
report Lundquist et al. (2009). The ogm was very popular at the DARPA urban
challenge, see the special issues Buehler et al. (2008). Generally, line shaped and
curved objects, such as roads and coast lines can be identified in topographic
maps. Road edge and obstacle detection have been tackled using raw radar im-
ages, see e.g., Kaliyaperumal et al. (2001); Lakshmanan et al. (1997); Nikolova
and Hero (2000); Ma et al. (2000). There have been several approaches making
use of reflections from the road edges, such as guard rails and reflection posts, to
compute information about the free space, see e.g. Kirchner and Heinrich (1998);
Kirchner and Ameling (2000); Sparbert et al. (2001) for some examples using
laser scanners. Radar reflections were used to track the road edges as extended
targets in Lundquist et al. (2011b). This method is promising but a drawback is
the large data association problem, which arises since it is hard to create a general
model for the various types of objects.
The bin occupancy filter is devised via a quantized state space model, where each
cell is denoted bin Erdinc et al. (2009). In the limit, when the volume of the bins
become infinitesimal, the filter equations are identical to the probability hypothe-
sis density (phd) filter, proposed by Mahler Mahler (2000, 2003, 2007). The phd
is the first moment density or intensity density of a random set. In Section 2 we
propose to represent the map by the surface described by the intensity density
of point sources of stationary objects. Individual sources are not tracked, but
the phd filter framework makes it possible to estimate the intensity of sources
in a given point. To describe the map by a continuous surface distinguishes our
method from the other mapping approaches mentioned above. An approach to
make use of the phd filter to solve the related slam problem is presented in Mul-
lane et al. (2008). In contrast to the intensity based map, the map in Mullane et al.
(2008) is represented by a finite set of map features, which are extracted from the
intensity density.
2 Mapping 197
2 Mapping
Sensors which measure range r and bearing ψ, e.g., radar and laser, are commonly
used for automotive and robotics navigation and mapping. These type of sensors
typically do not give the user access to their detection and decision parameters.
Automotive radar sensors threshold the amplitude and deliver only those detec-
tions with the highest amplitude, whereas a laser sensor delivers the first range
detection along a bearing angle. Furthermore, cameras measure two angles and
represent them in a pixel matrix. The considered sensors provide a set of noisy
measurements (thresholded detections)
n o
Zk = z(1) , z(2) , . . . , z(Nz,k ) (1)
k k k
at each discrete time instant k = 1, . . . , K.
Landmark detections from the noisy sensor data are used to build a probabilistic
map, represented by a set of Nm objects in the environment
n o
Mk = m(1)
k , m
(2)
k , . . . , m
(Nm )
k
. (2)
There exists primarily two types of indexing for probabilistic maps Thrun et al.
(2005). In a feature based map each m(n) specifies the properties and location of
one object Smith et al. (1988), whereas in a location based map the index n corre-
sponds to a location and m(n) is the property of that specific coordinate. Note that
the indexing is analogous to the representation of sensor data, the range and bear-
ing measurements from a radar or laser are feature based, whereas the pixels of a
camera are location based measurements. The Occupancy grid map is a classical
location based representation of a map, where each cell of the grid is assigned a
binary occupancy value that specifies if the location n is occupied (m(n) = 1) or
not (m(n) = 0) Elfes (1987); Moravec (1988). The aim of all stochastic mapping
algorithms, independent of indexing, is to estimate the posterior density of the
map
p(Mk |Z1:k ), (3)
198 Paper D Road Intensity Based Mapping using Radar Measurements
those point sources. Also for mapping cases the assumption that there will not
be two measurements from the same point at the same time is justified. The
described relation is modeled by a likelihood function p(Zk |Mk|k ), which maps
the Cartesian map to polar point measurements.
So far in this section the discussion has been quite general and the phd or the
intensity has only been considered as a surface over the surveillance region. The
first practical algorithms to realize the phd filter prediction and measurement
update equations were based on the particle filter, see e.g., Vo et al. (2003); Zajic
and Mahler (2003); Sidenbladh (2003), where the phd is approximated by a large
set of random samples (particles). A Gaussian mixture approximation of the phd
(gm-phd) was proposed by Vo and Ma Vo and Ma (2006). The mixture is repre-
sented by a sum of weighted Gaussian components and in particular the mean
and covariance of the components are propagated by the Kalman filter. In this
work the intensity is represented by a Gaussian mixture, since the parametriza-
tion and derivation is simpler than for a particle filter based solution. The mod-
eling of the intensity through a number of Gaussian components makes it also
simpler to account for structures in the map. We will return to these structures
in the next two sections.
The gm-phd filter estimates the posterior intensity, denoted Dk|k , as a mixture of
Gaussian densities as,
Jk|k
(i) (i) (i)
X
Dk|k = wk|k N mk|k , Pk|k , (5)
i=1
(i)
where Jk|k is the number of Gaussian components and wk|k is the expected number
(i) (i)
of point sources covered by the density N (mk|k , Pk|k ). In Section 3 it is shown how
the intensity is estimated with the gm-phd filter. The Gaussian components are
(i) (i)
parametrized by a mean mk|k and a covariance value Pk|k , which are expressed in
a planar Cartesian coordinate frame, according to
(i) (i) T
h i
mk = x(i)
k y k
. (6)
The aim of the mapping algorithm is to estimate the posterior density (3). The
considered intensity based map is continuous over the surveillance region, thus,
the volume of the bins becomes infinitesimal, and the number of elements in (2)
tends to infinity (Nm → ∞). Furthermore, the intensity is a summary statistic of
the map according to
p(Mk |Z1:k ) ∼ p(Mk ; Dk|k ), (7)
see e.g., Mahler (2003), and the estimated intensity Dk|k is parametrized by
(i) (i) (i) (i)
µk , wk , mk , Pk (8)
of the Gaussian sum (5). The intensity based map is a multimodal surface with
200 Paper D Road Intensity Based Mapping using Radar Measurements
Z (2)
Z (1)
Z (3)
Figure 1: The observation space of the forward looking radar is denoted Z (1)
and the observation spaces of the side-looking radars are Z (2) and Z (3) .
peaks around areas with many sensor reflections or point sources. It is worth
observing that the map M is described by a location based function (5), with fea-
ture based parametrization (8). The intensity is a distribution and the graphical
representation provides an intuitive description of the map.
The three sensors are one forward looking 77 GHz mechanically scanning fmcw
radar, with measurement space Z (1) , and two medium distance 24 GHz radars,
with measurement spaces Z (2) and Z (3) , which are mounted on the vehicle as
illustrated in Figure 1. The radars constitute a multi-sensor system, measuring
at different ranges and in different directions, but with an overlap of observa-
tion spaces. One of the most significant advantages with the phd filter is that
this framework scales very well for multi-sensor multi-target problem, and the
classically hard sensor fusion task is solved more or less automatically. A coordi-
nate frame E is attached to the moving ego vehicle, see Figure 3. The trajectory
x1:k = x1 , . . . , xk of the ego vehicle is assumed to be a priori known in this work,
and it is defined through the sequence of all its positions, orientations and veloc-
ities relative the world coordinate frame W up to time k.
Note, that the map is parametrized in a very compact format (8), and that the
parameters easily can be sent over the can-bus to decision systems in a car.
3 GM-PHD Filter 201
3 GM-PHD Filter
The phd filter recursion is described in e.g., Mahler (2003), the bin occupancy
filter is described in Erdinc et al. (2009) and the gm-phd filter recursion is de-
scribed in Vo and Ma (2006). This section intents to summarize the main algo-
rithmic concept of those contributions and apply the filter to the mapping appli-
cation. The mentioned filters are primarily developed for multiple-target track-
ing, where, at least for the phd filter, the targets are defined as a random finite
set, and where the extraction of the most likely target states at the end of each
recursion cycle is an important output. However, the output for the proposed
mapping is the intensity Dk|k , which describes the density of sensor reflections or
point sources. The filter recursion is given by the time update in Section 3.1 and
the measurement update in Section 3.2 below.
of its parents. However, in the mapping application the existing stationary point
sources are likely to belong to extended object, which describe some structure
in the map, from which new point sources are likely to be spawned. Typical
examples of such structures are guard rails in automotive examples or coast lines
in terrain mapping. An approach is proposed where the components are derived
(i) (i)
using a model-based process, which takes the existing components N (mk|k , Pk|k )
at time step k as input. A method, which clusters the components and estimates
the model parameters simultaneously is described in Section 4. The Gaussian
(j) (j)
mixture components N (mβ,k+1|k , Pβ,k+1|k ) are then sampled from the estimated
models.
(i) (i)
where ηk|k−1 is the predicted measurement and Sk|k−1 is the innovation covari-
ance from the i th component in the predicted intensity. The clutter intensity at
time k is denoted κk , and the clutter measurements are assumed to be Poisson
4 Joint Clustering and Estimation 203
distributed.
The spawning process was briefly introduced in Section 3.1. Provided that there
exists a certain structure in between the single point objects in the map, then this
structure can be used to improve the spawning process. This section describes
how the map structure can be found, modeled and estimated. We propose a re-
gression clustering algorithm, which alternates between clustering the Gaussian
components and estimating the model parameters, using a simple weighted least
squares method. The standard K-means cluster algorithm is first described in Sec-
tion 4.1 followed by the joint clustering and estimation algorithm in Section 4.2.
Road edges are typical structures in a map, and it is shown in Section 4.3 how to
apply the joint clustering and estimation algorithm to estimate these.
where µ(k) is the mean value of the set Y(k) . A solution is found by alternating
between the assignment step, which assigns each observation to the cluster with
the closest mean, and the update step, which calculate the new means, until con-
vergence, see e.g., the textbooks Bishop (2006); Hastie et al. (2009); Duda et al.
(2001). A study of the convergence properties of the K-means algorithm is given
in MacQueen (1967).
Now, suppose that the observations y(i) of the set Y(k) are produced by a regres-
sion model, with the regressors ϕ (i) , according to
y(i) = (ϕ (i) )T θ (k) + e(i) , y(i) ∈ Y(k) , e(i) ∼ N (0, R(i) ), (18)
and that the objective is to identify the parameters θ (k) for every expected clus-
ter k = 1, . . . , K. The observations y(i) within one set Y(k) are chosen to fit the
common parameter θ (k) , i.e., the aim is to minimize the sum of squared residuals
204 Paper D Road Intensity Based Mapping using Radar Measurements
using the norm ||x||2R = xT R−1 x. This can be done by first clustering all observa-
tions using K-means (17) and thereafter estimating the parameters θ (k) for each
cluster. However, we propose a joint clustering and estimation algorithm, which
instead of clustering the observations around mean values µ(k) , clusters around
models (ϕ (i) )T θ (k) . Similar methods are used to solve for piecewise affine systems,
see e.g., Roll (2003); Ferrari-Trecate et al. (2003), and for switching dynamic sys-
tems, see e.g., Petridis and Kehagias (1998), where the observation regions and
submodels are identified iteratively. A solution is found by alternating between
an assignment step and an estimation step until convergence. These steps are
described in detail below.
Assignment Step
(k) (k)
Given an initial guess of K parameters θ̂0 and covariances P0 , for k = 1 . . . , K;
each observation y(i) is first assigned to the cluster with the smallest estimation
error according to
(k)
n (k) (j) o
Yτ = y(i) : y(i) − (ϕ (i) )T θ̂τ (k,i) ≤ y
(i)
− (ϕ (i) )T θ̂τ (k,i) , ∀j , (20a)
Sτ Sτ
Estimation Step
The second step is the update step, where new parameters θ̂ (k) are estimated
for each cluster. Any estimation algorithm may be used, e.g., the weighted least
squares according to
−1
X
(k) X
ϕ (i) (R(i) )−1 (ϕ (i) )T ϕ (i) (R(i) )−1 (ϕ (i) )T y(i) ,
θ̂τ+1 = (21a)
(i) (k) (i) (k)
y ∈Yτ y ∈Yτ
−1
X
(k)
ϕ (i) (R(i) )−1 (ϕ (i) )T .
Pτ+1 = (21b)
(k)
y(i) ∈Yτ
The assignment step (20) and estimation step (21) are iterated until the assign-
ments no longer change.
4 Joint Clustering and Estimation 205
clustering and estimation algorithm, and the lines are the resulting road edge
models ϕ T θ (k) . The past and future path of the ego vehicle is shown by black
dots in the figure and can be used as a good reference of the road edges being
correctly estimated. The number of components in each cluster indicates how
many objects that should be spawned from the cluster. The spawning along the
road edges is described in Section 6.2.
5 Merging
The Gaussian mixture formulation of the phd filter tends to suffer from a high
computational complexity as the number of mixture components, Jk|k , in (5)
grows rapidly. To keep the complexity under control, methods are typically used
(i)
to prune mixture components with too low weight wk|k , which makes small con-
tribution to the posterior density, and to merge components that are similar. The
general merging process is discussed in Section 5.1. However, while keeping the
complexity in check, it is important not to lose too much information in the pro-
cess. The errors introduced in pruning and merging are analyzed in Clark and
Vo (2007). In Section 5.2, we propose a general algorithm, which can be used
for merging Gaussian components if more information about the system is avail-
able. The state space is often chosen since it is a convenient space to perform
tracking in, i.e., to predict and update tracks in. However, as described in Sec-
tion 5.2, Gaussian components may be better merged in another space, in which
the system requirements are easier to describe.
Typically there exists some structure in a map. By exploiting this structure in the
merging of the components, it is possible to maintain the information in the map,
while reducing the number of components needed to describe it. The algorithm
proposed in Section 5.2 is applied on the road map example in Section 5.3. The
model-based merging method exploits the maps structure to find a more efficient
representation of the posterior intensity in (5).
5.1 Background
The Gaussian mixture posterior intensity is given in (14). The aim of the merging
is to compute a reduced Gaussian mixture, with ` < Jk|k components, that is close
to the original intensity according to some distance measure d.
180 180
160 160
140 140
120 120
100 100
80 80
60 60
40 40
20 20
0 0
−20 −20
20 0 −20 20 0 −20
(a) (b)
Figure 2: The four clusters, describing the road edges, are illustrated with
different colors, and can be compared with the vehicles driven path indicated
with black dots. The lines are a “snapshot” estimate, based on the Gaussian
components at one time step k. The drivers view is shown in Figure 5a and
5b for the two traffic scenarios in (a) and (b), respectively.
208 Paper D Road Intensity Based Mapping using Radar Measurements
5.2 Algorithm
Let us introduce an invertible, possibly nonlinear, mapping function T ( · ), which
transforms the Gaussian components µ, defined in (8), from the state space to the
merging space. The proposed algorithm consists of the following steps
(i) (i)
1. Transform µ̄k := T (µk ).
(i) (i)
2. Merge µ̄k using the cluster algorithm in Algorithm 10, resulting in µ̄˜ k .
(i) (i)
3. Inverse transform µ̃k := T −1 (µ̄˜ k ).
The merging algorithm and the transformation is exemplified on the the road
mapping example in the subsequent Section 5.3.
where xE and yE are expressed in the ego vehicle’s coordinate frame E. This model
was introduced by Dickmanns Dickmanns and Zapp (1986) and a neat feature of
the model is that the parameters can be interpreted as physical sizes. The angle
between the longitudinal axis of the vehicle and the road lane is ψRE , see Figure 3.
It is assumed that this angle is small and hence the approximation sin ψRE ≈ ψRE
is used. The curvature parameter is denoted c0 . The parameters can be estimated
using computer vision and a lane tracker, or taken from the joint clustering and
estimation method described in the previous section.
The non-linear transformation T from the world coordinate frame to h the road
iT
fixed coordinate frame is calculated in two steps. First the components xW yW ,
h iT
represented in the world coordinate frame W are transformed to xE yE , rep-
resented in the ego vehicle coordinate frame E, using
" E# " W# !
x
WE T x
W
= R − d EW , (29)
yE yW
where the planar rotation matrix is given by
" #
WE cos ψE − sin ψE
R = , (30)
sin ψE cos ψE
and where ψE is the angle of rotation from W to E. This angle is referred to as
W
the yaw angle of the vehicle. In this work it is assumed that the position dEW and
orientation ψE of the ego vehicle is known. In the second step the components
210 Paper D Road Intensity Based Mapping using Radar Measurements
x̄R
z(i)
r (s)
xEs
δ
(s)
(s) Es
yEs
xE
y E ψE
ȳR E
dW
EW
W
yW
ψRE
xW
Figure 3: The world coordinate frame is denoted W , the ego vehicle’s coor-
dinate frame is denoted E and the curved road coordinate frame is denoted
R.
(j)
The covariance Pk in the distance measure (27) is artificially formed to make it
more likely for components lying along the road to be merged. A diagonal covari-
ance matrix Σ ∈ R2×2 is created, with its two elements well separated, resulting
in a pin-shaped covariance ellipse, and added to the state covariance according
to
(j) (j)
P¯ = P + Σ.
k k (32)
The merging is performed according to Algorithm 10, and the components are
transformed back to the world coordinate frame using the inverse transform T −1 ,
cf. Section 5.2. An example showing the components before and after the merg-
ing is illustrated in Figure 4. Compared with the camera view in Figure 5a, it is
clearly shown that the resulting components are following the road edge.
5 Merging 211
180 180
160 160
140 140
120 120
100 100
80 80
60 60
40 40
20 20
0 0
−20 −20
20 0 −20 20 0 −20
(a) Before Pruning and Merging (b) After Pruning and Merging
Figure 4: Figure (a) shows the Gaussian mixture before pruning and merging
and Figure (b) shows the reduced mixture. The illustrated road is estimated
from the camera image, and can be used as a reference here. This is the same
example as in Figure 5a-5c, where also a photo of the driver’s view is given.
212 Paper D Road Intensity Based Mapping using Radar Measurements
In this work, variables are defined from different perspectives. The measure-
ments are obtained by the sensor on the ego vehicle and are therefore expressed
in the ego vehicles coordinate frame, which is denoted E. The states, i.e., the po-
sition of the stationary objects, are expressed in a world fixed reference frame W .
(s)
The radars are mounted at the front bumper at the positions Es , for the sensors
s = 1, 2, 3.
The left and right road edges are modeled with the polynomial (22) and with
the parameter vectors θ (1) and θ (2) which were estimated in Section 4.3. The
parameters θ (3) and θ (4) are assumed to belong to lines further away, e.g., the
other side of the road, and are therefore not considered here. The models are
used to create a prior intensity, which is a Gaussian mixture of the form (12)
along the road edges. The road model (22) is expressed in vehicle coordinates
and after having derived the Gaussian mixture, the components are transformed
into the world frame W .
n oJβ,k+1 /2
A number Jβ,k+1 /2 of xE -coordinates, denoted xE,(j) , are chosen in the
j=1
range from 0 to the maximum range of the radar sensor. The corresponding
n oJβ,k+1 /2 n oJβ,k+1
yE -coordinates yE,(j) and yE,(j) are derived by using the road
j=1 j=Jβ,k+1 /2+1
border model (22) and the parameters θ̂ (1) and θ̂ (2) , respectively. The coordi-
nates form the mean values of the position of the Gaussian components on the
road edges according to
E,(j) h iT
mβ,k+1 = xE,(j) yE,(j) . (35a)
The covariance of the Gaussian components is given by the diagonal matrix
2
E,(j)
σ E 0
x
Pβ,k+1 = 2 , (35b)
0 E E(j)
σy (x )
where it is assumed that the variance of the y-coordinate increases with the x-
distance, i.e., σyE (xE,(j) ) depends on xE(j) , to model the increased uncertainty in
the shape of the road at long distances.
So far the derivations are accomplished in the ego vehicles coordinate frame E,
but since the map is expressed in the world frame W , the components of the
Gaussian mixture are transformed into the world coordinate frame according to
(j) E,(j)
mβ,k+1 = RW E mβ,k+1 + dEW
W
, (36a)
(j) E,(j) T
Pβ,k+1 = RW E Pβ,k+1 RW E , (36b)
(j)
to be used in (12). The weight wβ,k+1 represents the expected number of new
(j)
targets originating from mβ,k+1 .
The general gm-phd filter recursion was described in Section 3. Additional de-
tails for the road mapping example are given in this section. The merging of
Gaussian components, described in Section 5.3, is performed in each iteration.
214 Paper D Road Intensity Based Mapping using Radar Measurements
Prediction
The process model (33a) is linear and the Gaussian components in (11) are de-
rived using the Kalman filter prediction step according to
(i) (i)
mk+1|k = mk|k , (37a)
(i) (i)
Pk+1|k = Pk|k + Qk−1 . (37b)
The probability of survival is pS = 0.99.
Measurement Update
The measurement equation (34) is nonlinear and the unscented transform (UT)
is used to propagate the state variables through the measurement equation, see
e.g., Julier and Uhlmann (2004). A set of L sigma points and weights, denoted
L
(`) (i) (i)
by χk , u (`) are generated from each Gaussian component N (xk|k−1 , Pk|k−1 )
`=0
using the method described in Julier and Uhlmann (2004). The sigma points are
transformed to the measurement space using (34) to obtain the propagated sigma
(`)
point ζk|k−1 and the first and second order moments of the measurement density
are approximated as
L
(i) (`)
X
ηk|k−1 = u (`) ζk|k−1 , (38a)
`=0
L T
(i) (`) (i) (`) (i)
X
Sk|k−1 = u (`) ζk|k−1 − ηk|k−1 ζk|k−1 − ηk|k−1 + Rk , (38b)
`=0
L T
(i) (`) (i) (`) (i)
X
Gk|k−1 = u (`) χk|k−1 − mk|k−1 ζk|k−1 − ηk|k−1 . (38c)
`=0
Note that these variables also are used to derive the updated weights in (16). The
Gaussian components are updated given the information from each new measure-
ment zk , which is in the gate
( T −1 )
(i) (i) (i)
Gi = zk zk − ηk|k−1 Sk|k−1 zk − ηk|k−1 < δG , (39)
The updated components are together forming the updated intensity in (15).
The posterior intensity at time step k was given in (14). The probability of detec-
6 Road Mapping Example 215
and the value is pD = 10−3 . Gaussian components which are outside field of view
of the sensor, i.e., the measurement space Z (s) , are hence not updated. The clutter
intensity is κ = 10−8 .
The measurements from the three radar sensors are fused by considering their
measurement times, synchronizing the data, and updating the filter accordingly.
Figure 5: The image in (a) shows the driver’s view of the intensity map in (c),
and the image in (b) is the driver’s view of the intensity map in (d). The
darker the areas in the intensity map, the higher the concentration of objects.
The drivers path is illustrated with black dots and may be used as a reference.
7 Conclusion 217
50
100
150
100 200 300 400 500 600 700 800 900 1000 1100
position [m]
Figure 6: The top figure shows the intensity based map obtained from radar
measurements collected on a highway (drivers view in Figure 5a). The ogm
in the middle figure serves as a comparison of an existing algorithm. The bot-
tom figure is a flight photo used as ground truth, where the driven trajectory
is illustrated with a dashed line (©Lantmäteriet Gävle 2010. Medgivande I
2010/1540, reprinted with permission).
7 Conclusion
In this work it is shown how the gm-phd filter can be used to create a map of
the environment using noisy point measurements. The map is represented by
the intensity, which describes the concentration of point sources. Methods to
identify and utilize typical map structures and to create an efficient prior in the
gm-phd-filter have been presented. The structures are identified by a clustering
algorithm which alternates between assigning existing map features to clusters,
and estimating structures within each cluster, until convergence. Furthermore,
these structures are also used to find an efficient representation of the resulting
map.
The usefulness of the proposed mapping approach is demonstrated using auto-
motive radar measurements collected on Swedish freeways. The resulting inten-
sity map of stationary objects, such as guardrails and lampposts, can be viewed as
a map over the concentration of radar reflectors. The parametrization is compact
and the map is easily sent over the can-bus to active safety functions, which can
use it to derive drivable trajectories with low probability of occupancy.
The intensity is a distribution and its graphical representation provides an intu-
itive description of the map, which is useful to decision making and path plan-
218 Paper D Road Intensity Based Mapping using Radar Measurements
Bibliography
M. Adams, W. S. Wijesoma, and A. Shacklock. Autonomous navigation: Achieve-
ments in complex environments. IEEE Instrumentation & Measurement Mag-
azine, 10(3):15–21, June 2007.
T. Bailey and H. Durrant-Whyte. Simultaneous localization and mapping (SLAM):
Part II. IEEE Robotics & Automation Magazine, 13(3):108–117, September
2006.
Y. Bar-Shalom, X. Rong Li, and T. Kirubarajan. Estimation with Applications to
Tracking and Navigation. John Wiley & Sons, New York, NY, USA, 2001.
C. M. Bishop. Pattern recognition and machine learning. Springer, New York, NY,
USA, 2006. ISBN 0-387-31073-8.
M. Buehler, K. Iagnemma, and S. Singh, editors. Special Issue on the 2007 DARPA
Urban Challenge, Part I-III, volume 25 (8–10). Journal of Field Robotics, 2008.
D. Clark and B.-N. Vo. Convergence analysis of the Gaussian mixture PHD filter.
IEEE Transactions on Signal Processing, 55(4):1204–1212, April 2007.
D. J. Daley and D. Vere-Jones. An introduction to the theory of point processes.
Vol. 1 , Elementary theory and method. Springer, New York, NY, USA, 2 edition,
2003.
E. D. Dickmanns and A. Zapp. A curvature-based scheme for improving road
vehicle guidance by computer vision. In Proceedings of the SPIE Conference
on Mobile Robots, volume 727, pages 161–198, Cambridge, MA, USA, 1986.
R. O. Duda, P. E. Hart, and D. G. Stork. Pattern classification. John Wiley & Sons,
New York, NY, USA, 2 edition, 2001.
H. Durrant-Whyte and T. Bailey. Simultaneous localization and mapping (SLAM):
Part I. IEEE Robotics & Automation Magazine, 13(2):99–110, June 2006.
A. Eidehall, J. Pohl, and F. Gustafsson. Joint road geometry estimation and vehicle
tracking. Control Engineering Practice, 15(12):1484–1494, December 2007a.
A. Eidehall, J. Pohl, F. Gustafsson, and J. Ekmark. Toward autonomous collision
avoidance by steering. IEEE Transactions on Intelligent Transportation Sys-
tems, 8(1):84–94, March 2007b.
A. Elfes. Sonar-based real-world mapping and navigation. IEEE Journal of
Robotics and Automation, 3(3):249–265, June 1987.
O. Erdinc, P. Willett, and Y. Bar-Shalom. The bin-occupancy filter and its con-
nection to the PHD filters. IEEE Transactions on Signal Processing, 57(11):
4232–4246, November 2009.
G. Ferrari-Trecate, M. Muselli, D. Liberati, and M. Morari. A clustering technique
for the identification of piecewise affine systems. Automatica, 39(2):205–217,
February 2003.
220 Paper D Road Intensity Based Mapping using Radar Measurements
J. Roll. Local and Piecewise Affine Approaches to System Identification. PhD the-
sis No 802, Linköping Studies in Science and Technology, Linköping, Sweden,
April 2003.
D. J. Salmond. Mixture reduction algorithms for target tracking in clutter. Pro-
ceedings of Signal and Data Processing of Small Targets, 1305(1):434–445, Jan-
uary 1990.
D. Schieferdecker and M.F. Huber. Gaussian mixture reduction via clustering.
In Proceedings of the International Conference on Information Fusion, pages
1536–1543, Seattle, WA, USA, July 2009.
H. Sidenbladh. Multi-target particle filtering for the probability hypothesis den-
sity. In Proceedings of the International Conference on Information Fusion,
volume 2, pages 800–806, Cairns, Australia, March 2003.
R. Smith, M. Self, and P. Cheeseman. A stochastic map for uncertain spatial
relationships. In Proceedings of the International Symposium on Robotics Re-
search, pages 467–474, Cambridge, MA, USA, 1988. MIT Press.
H. W. Sorenson and D. L. Alspach. Recursive Bayesian estimation using Gaussian
sum. Automatica, 7:465–479, July 1971.
J. Sparbert, K. Dietmayer, and D. Streller. Lane detection and street type clas-
sification using laser range images. In Proceedings of the IEEE Conference on
Intelligent Transportation Systems, pages 454–459, Oakland, CA, USA, August
2001.
S. Thrun, W. Burgard, and D. Fox. Probabilistic Robotics. The MIT Press, Cam-
bridge, MA, USA, 2005.
B.-N. Vo and W.-K. Ma. The Gaussian mixture probability hypothesis density
filter. IEEE Transactions on Signal Processing, 54(11):4091–4104, November
2006.
B.-N. Vo, S. Singh, and A. Doucet. Random finite sets and sequential Monte Carlo
methods in multi-target tracking. In Proceedings of the International Radar
Conference, pages 486–491, Adelaide, Australia, September 2003.
J. L. Williams and P. S. Maybeck. Cost-function-based Gaussian mixture reduc-
tion for target tracking. In Proceedings of the International Conference on
Information Fusion, volume 2, pages 1047–1054, Cairns, Australia, July 2003.
T. Zajic and R. P. S. Mahler. Particle-systems implementation of the PHD
multitarget-tracking filter. In Signal Processing, Sensor Fusion, and Target
Recognition XII, volume 5096, pages 291–299, Orlando, FL, USA, April 2003.
SPIE.
Paper E
Extended Target Tracking Using a
Gaussian-Mixture PHD Filter
Preliminary version:
Technical Report LiTH-ISY-R-3028, Dept. of Electrical Engineering, Lin-
köping University, SE-581 83 Linköping, Sweden.
Extended Target Tracking Using a
Gaussian-Mixture PHD Filter
Abstract
This paper presents a Gaussian-mixture implementation of the phd
filter for tracking extended targets. The exact filter requires process-
ing of all possible measurement set partitions, which is generally in-
feasible to implement. A method is proposed for limiting the number
of considered partitions and possible alternatives are discussed. The
implementation is used on simulated data and in experiments with
real laser data, and the advantage of the filter is illustrated. Suitable
remedies are given to handle spatially close targets and target occlu-
sion.
1 Introduction
In most multi-target tracking applications it is assumed that each target produces
at most one measurement per time step. This is true for cases when the distance
between the target and the sensor is large in comparison to the target’s size. In
other cases however, the target size may be such that multiple resolution cells
of the sensor are occupied by the target. Targets that potentially give rise to
more than one measurement per time step are categorized as extended. Examples
include the cases when vehicles use radar sensors to track other road-users, when
ground radar stations track airplanes which are sufficiently close to the sensor, or
in mobile robotics when pedestrians are tracked using laser range sensors.
Gilholm and Salmond Gilholm and Salmond (2005) have presented an approach
for tracking extended targets under the assumption that the number of received
target measurements in each time step is Poisson distributed. Their algorithm
was illustrated with two examples where point targets which may generate more
than one measurement and objects that have a 1-D extension (infinitely thin stick
of length l) are tracked. In Gilholm et al. (2005) a measurement model was sug-
gested which is an inhomogeneous Poisson point process. At each time step, a
Poisson distributed random number of measurements are generated, distributed
around the target. This measurement model can be understood to imply that the
225
226 Paper E Extended Target Tracking Using a Gaussian-Mixture PHD Filter
extended target is sufficiently far away from the sensor for its measurements to
resemble a cluster of points, rather than a geometrically structured ensemble. A
similar approach is taken in Boers et al. (2006) where track-before-detect theory
is used to track a point target with a 1-D extent.
Using the rigorous finite set statistics (fisst), Mahler has pioneered the recent
advances in the field of multiple target tracking with a set theoretic approach
where the targets and measurements are treated as random finite sets (rfs). This
type of approach allows the problem of estimating multiple targets in clutter and
uncertain associations to be cast in a Bayesian filtering framework Mahler (2007),
which in turn results in an optimal multi-target Bayesian filter. As is the case in
many nonlinear Bayesian estimation problems, the optimal multi-target Bayesian
filter is infeasible to implement except for simple examples and an important
contribution of fisst is to provide structured tools in the form of the statistical
moments of a rfs. The first order moment of a rfs is called probability hypoth-
esis density (phd), and it is an intensity function defined over the state space of
the targets. The so called phd filter Mahler (2003, 2007) propagates in time phds
corresponding to the set of target states as an approximation of the optimal multi-
target Bayesian filter. A practical implementation of the phd filter is provided by
approximating the phds with Gaussian-mixtures (gm) Vo and Ma (2006) which
results in the Gaussian-mixture phd (gm-phd) filter. In the recent work Mahler
(2009), Mahler presented an extension of the phd filter to also handle extended
targets of the type presented in Gilholm et al. (2005).
The document is outlined as follows. The multiple extended target tracking prob-
lem is defined in Section 2. The details of the Gaussian-mixture implementation
are given in Section 3. For the measurement update step of the et-gm-phd-filter,
different partitions of the set of measurements have to be considered. A measure-
ment clustering algorithm used to reduce the combinatorially exploding num-
ber of possible measurement partitions is described in Section 4. The proposed
approaches are evaluated using both simulations and experiments. The target
tracking setups for these evaluations are described in Section 5, the simulation
results are presented in Section 6 and results using data from a laser sensor are
presented in Section 7. Finally, Section 8 contains conclusions and thoughts on
future work.
2 Target Tracking Problem Formulation 227
The relevant target characteristics that are to be estimated form the target’s state
vector x. Generally, beside the kinematic variables as position, velocity and ori-
entation, the state vector may also contain information about the target’s spatial
extension. As mentioned above, when the target’s state does not contain any vari-
ables related to the target extent, though the estimation is done as if the target
was a point (i.e. the target reference point), the algorithms should still take care
of the multiple measurements that originate from a target. Hence, in this study,
we use a generalized definition of an extended target, given below, which does
not depend on whether the target extent is estimated or not.
In this work, to simplify the presentation, no information about the size and
shape of the target is kept in the state vector x, i.e. the target extent is not ex-
plicitly estimated. Nevertheless, it must be emphasized that this causes no loss
of generality as shown by the recent work Granström et al. (2011b) where the re-
sulting et-gm-phd filter is used to handle the joint estimation of size, shape and
kinematic variables for rectangular and elliptical extended targets. We model
both the target states to be estimated, and the measurements collected, as rfss .
The motivation behind this selection is two-fold. First, in many practical systems,
although the sensor reports come with a specific measurement order, the results
of the target tracking algorithms are invariant under the permutations of this or-
der. Hence, modeling the measurements as the elements of a set in which the
order of the elements is irrelevant makes sense. Second, this work unavoidably
depends on the previous line of work Mahler (2009), which is based on such a
selection.
The initial gm-phd work Vo and Ma (2006) does not provide tools for ensuring
track continuity, for which some remedies are described in the literature, see
e.g. Panta et al. (2009). It has however been shown that labels for the Gaussian
components can be included into the filter in order to obtain individual target
tracks, see e.g. Clark et al. (2006). In this work, for the sake of simplicity, labels
228 Paper E Extended Target Tracking Using a Gaussian-Mixture PHD Filter
are not used, however they can be incorporated as in Clark et al. (2006) to provide
track continuity.
We denote the unknown number of targets as Nx,k , and the set of target states to
x,k (i) N
be estimated at time k is Xk = {xk }i=1 . The measurement set obtained at time k
(i) Nz,k
is Zk = {zk }i=1 where Nz,k is the number of the measurements.
(i)
The dynamic evolution of each target state xk in the rfs Xk is modeled using a
linear Gaussian dynamical model,
(i) (i) (i)
xk+1 = Fk xk + Gk wk , (1)
(i) (i)
for i = 1, . . . , Nx,k , where wk is Gaussian white noise with covariance Qk . Note
that each target state evolves according to the same dynamic model independent
of the other targets.
The number of measurements generated by the ith target
at each time step is
(i)
a Poisson distributed random variable with rate γ xk measurements per scan,
where γ( · ) is a known non-negative function defined over the target state space.
The probability of the ith target generating at least one measurement is then
given as
(i)
−γ xk
1−e . (2)
(i)
The ith target is detected with probability pD x k where pD ( · ) is a known non-
negative function defined over the target state space. This gives the effective
probability of detection
(i)
1 − e−γ xk pD x(i) .
k (3)
The measurements originating from the ith target are assumed to be related to
the target state according to a linear Gaussian model given as
(j) (i) (j)
zk = Hk xk + ek , (4)
(j)
where ek is white Gaussian noise with covariance Rk . Each target is assumed to
give rise to measurements independently of the other targets. We here emphasize,
that in an rfs framework both the set of measurements Zk and the set of target
states Xk are unlabeled, and hence no assumptions are made regarding which
target gives rise to which measurement.
The number of clutter measurements generated at each time step is a Poisson dis-
tributed random variable with rate βFA,k clutter measurements per surveillance
volume per scan. Thus, if the surveillance volume is Vs , the mean number of
clutter measurements is βFA,k Vs clutter measurements per scan. The spatial dis-
tribution of the clutter measurements is assumed uniform over the surveillance
3 Gaussian-Mixture Implementation 229
volume.
The aim is now to obtain an estimate of the sets of the target states XK = {Xk }K k=1
given the sets of measurements ZK = {Zk }K k=1 . We achieve this by propagating the
predicted and updated phds, denoted Dk|k−1 ( · ) and Dk|k ( · ), respectively, of the
set of target states Xk , using the phd filter presented in Mahler (2009).
3 Gaussian-Mixture Implementation
In this section, following the derivation of the gm-phd-filter for standard sin-
gle measurement targets in Vo and Ma (2006), a phd recursion for the extended
target case is described. Since the prediction update equations of the extended
target phd filter are the same as those of the standard PHD filter Mahler (2009),
the Gaussian mixture prediction update equations of the et-gm-phd filter are the
same as those of the standard gm-phd filter in Vo and Ma (2006). For this rea-
son, here we only consider the measurement update formulas for the et-gm-phd
filter.
The predicted phd has the following Gaussian-mixture representation
JX
k|k−1
(j) (j) (j)
Dk|k−1 (x) = wk|k−1 N x | mk|k−1 , Pk|k−1 (5)
j=1
where
• Jk|k−1 is the predicted number of components;
(j)
• wk|k−1 is the weight of the jth component;
(j) (j)
• mk|k−1 and Pk|k−1 are the predicted mean and covariance of the jth compo-
nent;
• the notation N (x | m, P ) denotes a Gaussian distribution defined over the
variable x with mean m and covariance P .
The phd measurement update equation for the extended target Poisson model
of Gilholm et al. (2005) was derived in Mahler (2009). The corrected phd-intensity
is given by the multiplication of the predicted phd and a measurement pseudo-
likelihood function Mahler (2009) LZk as
Dk|k (x|Z) = LZk (x) Dk|k−1 (x|Z) . (6)
The measurement pseudo-likelihood function LZk in (6) is defined as
LZk (x) , 1 − e−γ(x) pD (x) + e−γ(x) pD (x)
X X γ (x)|W | Y φz (x)
k
× ωp · . (7)
dW λk ck (zk )
p∠Zk W ∈p zk ∈W
230 Paper E Extended Target Tracking Using a Gaussian-Mixture PHD Filter
where
• ck (zk ) = 1/Vs is the spatial distribution of the clutter over the surveillance
volume;
• the notation p∠Zk means that p partitions the measurement set Zk into non-
empty cells W ;
• the quantities ωp and dW are non-negative coefficients defined for each par-
tition p and cell W respectively.
• φzk (x) = p(zk |x) is the likelihood function for a single target generated mea-
surement, which would be a Gaussian density in this work.
The first summation on the right hand side of (7) is taken over all partitions p of
the measurement set Zk . The second summation is taken over all cells W in the
current partition p.
5 Assumption. Each target follows a linear Gaussian dynamical model, cf. (1),
and the sensor has a linear Gaussian measurement model, cf. (4).
7 Assumption. The intensities of the birth and spawn rfs are Gaussian-mixtures.
In this paper we adopt all of the above assumptions except that we relax the
assumption on detection probability as follows.
8 Assumption. The following approximation about probability of detection func-
tion pD ( · ) holds.
(j) (j) (j) (j) (j)
pD (x) N x | mk|k−1 , Pk|k−1 ≈ pD mk|k−1 N x | mk|k−1 , Pk|k−1 (8)
(j) (j) (j)
where we used the short hand notations γ (j) and pD for γ mk|k−1 and pD mk|k−1
respectively.
D
The Gaussian-mixture Dk|k (x, W ), handling the detected target cases, is given by
JX
k|k−1
D (j) (j) (j)
Dk|k (x, W ) = wk|k N x | mk|k , Pk|k , (12a)
j=1
(j)
(j) Γ (j) pD (j) (j)
wk|k = ωp Φ W wk|k−1 , (12b)
dW
(j) |W |
Γ (j) = e−γ γ (j) , (12c)
(j) (j)
Y 1
ΦW = φW , (12d)
λk ck (zk )
zk ∈W
where the product is over all measurements zk in the cell W and |W | is the num-
(j)
ber of elements in W . The coefficient φW is given by
(j) (j) (j)
φW = N zW | HW mk|k−1 , HW Pk|k−1 HTW + RW (12e)
−1
(j) (j) (j)
Kk = Pk|k−1 HTW HW Pk|k−1 HTW + RW . (13c)
Here, pi is the ith partition, and Wji is the jth cell of partition i. Let |pi | denote the
number of cells in the partition, and let |Wji | denote the number of measurements
in the cell. It is quickly realized that as the size of the measurement set increases,
the number of possible partitions grows very large. In order to have a computa-
tionally tractable target tracking method, only a subset of all possible partitions
can be considered. In order to achieve good extended target tracking results, this
subset of partitions must represent the most likely ones of all possible partitions.
In Section 4.1, we propose a simple heuristic for finding this subset of partitions,
which is based on the distances between the measurements. We here note that
our proposed method is only one instance of a vast number of other clustering
algorithms found in the literature, and that other methods could have been used.
Some well-known alternatives are pointed out, and compared to the proposed
partitioning method, in Section 4.2. A modification of the partitioning approach
to better handle targets which are spatially close is described in Section 4.3.
Proof: The proof is given in Appendix A.1 for the sake of clarity.
(i) (j)
Then, for two target-originated measurements zk and zk belonging to the same
(i) (j)
target, dM zk , zk is χ2 distributed with degrees of freedom equal to the mea-
surement vector dimension. Using the inverse cumulative χ2 distribution func-
tion, which we denote here as invchi2( · ), a unitless distance threshold δPG can be
computed as
δPG = invchi2(PG ), (20)
for a given probability PG . We have seen in early empirical simulations that good
target tracking results are achieved with partitions computed using the subset
of distance thresholds in D satisfying the condition δPL < d` < δPU for lower
probabilities PL ≤ 0.3 and upper probabilities PU ≥ 0.8.
As a simple example, if there are four targets present, each with expected number
of measurements 20, and clutter measurements are generated with βFA Vs = 50,
then the mean number of measurements collected each time step would be 130.
For 130 measurements, the number of all possible partitions is given by the Bell
number B130 ∝ 10161 Rota (1964). Using all of the thresholds in the set D, 130
different partitions would be computed on average. Using the upper and lower
probabilities PL = 0.3 and PU = 0.8, Monte Carlo simulations show that on aver-
age only 27 partitions are computed, representing a reduction of computational
complexity several orders of magnitude.
236 Paper E Extended Target Tracking Using a Gaussian-Mixture PHD Filter
The main reason behind this shortcoming of K-means is the initialization of the
algorithm, where the initial cluster centers are chosen by uniform sampling. In or-
der to overcome this problem, modifications to the standard K-means algorithm
have been suggested, where initial clusters are chosen as separated as possible,
see Arthur and Vassilvitskii (2007); Ostrovsky et al. (2006). This improved ver-
sion of K-means is called K-means++.
600 600
400 400
200 200
Y [m]
Y [m]
0 0
−200 −200
−400 −400
is suggested, but more in showing that all possible partitions can efficiently be
approximated using a subset of partitions.
4.3 Sub-Partitioning
Initial results using et-gm-phd showed problems with underestimation of tar-
get set cardinality in situations where two or more extended targets are spatially
close Granström et al. (2010). The reason for this is that when targets are spa-
tially close, so are their resulting measurements. Thus, using Distance Partition-
ing, measurements from more than one measurement source will be included in
the same cell W in all partitions p, and subsequently the et-gm-phd filter will
interpret measurements from multiple targets as having originated from just one
target. In an ideal situation, where one could consider all possible partitions of
the measurement set, there would be alternative partitions which would contain
the subsets of a wrongly merged cell. Such alternative partitions would dominate
the output of the et-gm-phd filter towards the correct estimated number of tar-
gets. Since we eliminate such partitions completely using Distance Partitioning,
the et-gm-phd filter lacks the means to correct its estimated number of targets.
One remedy for this problem is to form additional sub-partitions after perform-
ing Distance Partitioning, and to add them to the list of partitions that et-gm-
phd filter considers at the current time step. Obviously, this should be done only
when there is a risk of having merged the measurements belonging to more than
one target, which can be decided based on the expected number of measurements
originating from a target. We propose the following procedure for the addition
of the sub-partitions.
Suppose that we have computed a set of partitions using Distance Partitioning, cf.
the algorithm in Algorithm 11. Then, for each partition generated by the Distance
j
Partitioning, say for pi , we calculate the maximum likelihood (ml) estimates N̂x
238 Paper E Extended Target Tracking Using a Gaussian-Mixture PHD Filter
Algorithm 12 Sub-Partition
n o
Require: Partitioned set of measurements Zp = p1 , . . . , pNp , where Np is the
number of partitions.
1: Initialise: Counter for new partitions ` = Np .
2: for i = 1, . . . , Np do
3: for j = 1, . . . , |pi | do
j j
4: N̂x = arg max p Wji Nx = n
n
j
5: if N̂x > 1 then
6: ` = ` + 1 {Increase the partition counter}
7: p` = pi \Wji {Current partition except the current cell}
n oN̂xj
j
8: Wk+ = split N̂x , Wji {Split the current cell}
k=1
n oN̂xj
9: p` = p` ∪ Wk+ {Augment the current partition}
k=1
10: end if
11: end for
12: end for
of the number of targets for each cell Wji . If this estimate is larger than one, we
j
split the cell Wji into N̂x sub-cells, denoted as
j
N̂x
Ws+
s=1 . (21)
We then add a new partition, consisting of the new sub-cells along with the other
cells in pi , to the list of partitions obtained by the Distance Partitioning.
We illustrate the sub-partitioning algorithm in Algorithm 12, where the splitting
operation on a cell is shown by a function
j
split N̂x , Wji . (22)
j
We give the details for obtaining the ml estimate N̂x and choosing the function
split ( · , · ) in the subsections below.
j
Computing N̂x
For this operation, we assume that the function γ( · ) determining the expected
number measurements generated by a target is constant i.e., γ( · ) = γ. Each tar-
get generates measurements independently of the other targets, and the number
of generated measurements by each target is distributed with the Poisson distribu-
tion, Pois ( · , γ). The likelihood function for the number of targets corresponding
to a cell Wji is given as
j
p Wji Nx = n = Pois Wji , γ n . (23)
5 Target Tracking Setup 239
Here, we assumed that the volume covered by a cell is sufficiently small such that
the number of false alarms in the cell is negligible, i.e. there are no false alarms
j
in Wji . The ml estimate N̂x can now be calculated as
j j
N̂x = arg max p Wji Nx = n . (24)
n
j
Note that other alternatives can be found for calculating the estimates of Nx , e.g.
utilizing specific knowledge about the target tracking setup, however, both sim-
ulations and experiments have shown that the above suggested method works
well.
14
12
10
−2
−15 −10 −5 0 5 10 15
Table 1: Parameter values used for simulations (s) and experiments (e).
T Qk Rk γ (i) wβ Qβ
S 1 22 I2 202 I2 10 0.05 blkdiag((100I2 , 400I2 ))
E 0.2 22 I2 0.12 I2 12 0.01 0.01I4
A constant velocity model Rong Li and Jilkov (2003), with sampling time T is
used. In all simulations the probability of detection and probability of survival
are set as pD = 0.99 and pS = 0.99, respectively. The algorithm parameters for
the simulation and experiment are given in Table 1. The surveillance area is
[−1000, 1000](m) × [−1000, 1000](m) for the simulations, and for the real data ex-
periments the surveillance area is a semi circle located at the origin with range
13 m. In the simulations, clutter was generated with a Poisson rate of 10 clutter
measurements per scan, and (unless otherwise stated) each target generated mea-
surements with a Poisson rate of 10 measurements per scan. The birth intensity
in the simulations is
Db (x) = 0.1N (x ; mb , Pb ) + 0.1N (x ; −mb , Pb ), (27a)
T
mb = [250, 250, 0, 0] , Pb = diag([100, 100, 25, 25]). (27b)
For the experiments, the birth intensity Gaussian components are illustrated with
their corresponding one standard deviation ellipsoids in Fig. 2. Each birth inten-
(j)
sity component has a weight wb = 0.1Jb , where the number of components is Jb = 7.
The spawn intensity is
Dβ (x|y) = wβ N (x ; ξ, Qβ ), (28)
where ξ is the target from which the new target is spawned and the values for wβ
and Qβ are given in Table 1.
6 Simulation Results 241
6 Simulation Results
This section presents the results from the simulations using the presented ex-
tended target tracking method. In Section 6.1 a comparison of the partitioning
methods is presented, the results show the increased performance when using
Sub-Partition. A comparison between et-gm-phd and gm-phd is presented in
Section 6.2, where it is shown that et-gm-phd as expected outperforms gm-phd
for extended targets. Section 6.3 presents a comparison of et-gm-phd and gm-
phd for targets that give rise to at most one measurement per time step. Finally,
detailed investigations are carried out about the effects of the possibly unknown
parameter γ in Section 6.4.
200 200
x [m]
x [m]
0 0
−200 −200
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100
400 400
350 300
y [m]
y [m]
200
300
100
250 0
200 −100
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100
600 600
Dist. [m]
Dist. [m]
400 400
200 200
0 0
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100
Time Time
(a) (b)
Figure 3: Two simulation scenarios with spatially close targets. To the left,
in (a), is a scenario where the two targets move closer to each other and then
stand still at a distance of 60m apart. Note that the true y position was 300m
for both targets for the entire simulation. To the right, in (b), is a scenario
where the two targets cross paths, at the closest point they are 50m apart.
The top and middle rows show the true x and y positions over time as a gray
solid line and a black dash-dotted line. The light gray shaded areas show the
target extent, taken as two measurement noise standard deviations (40m).
The bottom row shows the distance between the two targets over time.
3 3 3
Sum of weights
Sum of weights
Sum of weights
2 2 2
1 1 1
10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80 90 100
Time Time Time
Sum of weights
Sum of weights
2 2 2
1 1 1
10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80 90 100
Time Time Time
Figure 4: Simulation results for the two scenarios in Fig. 3, comparing dif-
ferent partitioning methods for different values of the expected number of
measurements γ. The top row, (a), (b) and (c), is for the true tracks in Fig. 3a.
The bottom row, (d), (e) and (f), is for the true tracks in Fig. 3b. Black shows
Distance Partitioning with Sub-Partition, gray is only Distance Partitioning.
It is clear from the plots that using Sub-Partition gives significantly better
results, especially when γ is higher.
6 Simulation Results 243
70
1000 30
Ground truth
800 ET-GM-PHD
600
60 GM-PHD
25
x [m]
400
200 50
Cardinality
−400
0 10 20 30 40 50 60 70 80 90 100
GM-PHD
30 15
500
20
10
0
10
y [m]
5
−500 0
−1000 −10 0
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100
Time Time Time
Figure 5: Results from multiple target tracking using synthetic data. (a)
The true x and y positions are shown in black, the light gray shaded areas
show the target extent, taken as two measurement noise standard deviations
(40m). (b) Mean ospa (solid lines) ±1 standard deviation (dashed lines). (c)
Mean cardinality compared to the true cardinality.
lations were performed, each with new measurement noise and clutter measure-
ments. The results are shown in Figure 5b and Figure 5c, which show the cor-
responding multi-target measure optimal subpattern assignment metric (ospa)
Schuhmacher et al. (2008), and the cardinality, respectively. In the ospa metric
the parameters are set to p = 2, corresponding to using the 2-norm which is a
standard choice, and c = 60, corresponding to a maximum error equal to three
measurement noise standard deviations. Here, the cardinality is computed as
PJk|k (j)
j=1 wk|k . This sum can be rounded to obtain an integer estimate of target num-
ber Vo and Ma (2006).
It is evident from the two figures that the presented et-gm-phd significantly out-
performs the standard gm-phd, which does not take into account the possibility
of the multiple measurements from single targets. The main difference between
the two filters is the estimation of cardinality, i.e. the number of targets. The et-
gm-phd-filter correctly estimates the cardinality with the exception of when the
new target is spawned – after time 67 there is a small dip in the mean estimated
cardinality, even though Sub-Partition is used. The reason for this is that the tar-
gets are 20m apart which is smaller than the effective target extent determined
by the measurement standard deviation (20m). As in the previous section, assum-
ing that the effective target extent is two standard deviations, which correspond
to circular targets of 40m radius, at 20m distance the measurements overlap sig-
nificantly and the probability that the new target’s measurements were also gen-
erated by the old target, as computed in (12e), is large. As the targets separate,
this probability decreases and the et-gm-phd filter recovers the correct cardinal-
ity. It should still be noted that, in reality, where the targets would probably be
rigid bodies, this type of very close situation is highly unlikely and the results
of the et-gm-phd filter with Sub-Partition would be close to those presented in
Section 6.1.
244 Paper E Extended Target Tracking Using a Gaussian-Mixture PHD Filter
7 8
True True
6 ET-GM-PHD 7 ET-GM-PHD
Sum of weights
GM-PHD GM-PHD
Ext. targets
6
5
5
4
4
3
3
2 2
1 1
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100
Time Time
5 4.5
True True
4.5 ET-GM-PHD 4 ET-GM-PHD
Sum of weights
GM-PHD GM-PHD
Ext. targets
4
3.5
3.5
3
3
2.5
2.5
2 2
1.5 1.5
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100
Time Time
PJk|k (j)
low, the increase in j=1 wk|k is a manifestation of this type of sensitivity of the
phd type filters.4 A similar sensitivity issue is mentioned in Erdinc et al. (2009)
for the case of no detection.
This problem can be overcome by increasing γ (j) slightly in the et-gm-phd fil-
j
ter, e.g. γ (j) = 2 gives pD,eff = 0.8560 which gives sum of weights and number
of extracted targets that better match the results from gm-phd, see Fig. 6c and
Fig. 6d. Using γ (j) = 3 gives results that are more or less identical to gm-phd,
thus a conclusion that can be drawn is that when tracking standard targets with
an et-gm-phd filter, the parameter γ (j) should not be set too small. The follow-
ing subsection investigates the issue of selecting the parameter γ in more detail.
25
1.6
Sum of weights
20 1.4
1.2
15 1
γ
0.8
10
0.6
5 0.4 Const γ̂
0.2 Dist. dep. γ̂
0
0 10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80 90 100
Time Time
(a) (b)
gets. In that region, the target behavior is fairly similar to the clutter behavior
which results in some Gaussian components with small weights surviving until
the situation is resolved.
Incorrect γ Parameter
In this simulation study, the target tracks in Figure 3b were used. Each target
generated measurements with a Poisson rate of γ = 20 and eleven different et-
gm-phd-filters, each using a different γ̂ value, were run. The set of γ̂ values used
is given as
γ̂ = 10, 12, . . . , 28, 30. (31)
The results, in terms of the sum of weights averaged over the Monte Carlo runs,
are shown in Figure 8. The figure shows that for sufficiently separated targets,
the et-gm-phd-filter correctly estimates the number of targets for all values of
γ̂. However, for spatially close targets, the et-gm-phd-filter overestimates the
number of targets when γ̂ is set too low, and underestimates the number of
targets when γ̂ is set too high. This result is actually expected, and is a direct
consequence of the simple sub-partitioning algorithm we use. When γ̂ is too
low, Sub-Partitioning creates an additional partition with too many cells, causing
the overestimation of number of targets. Conversely, when γ̂ is too high, Sub-
Partitioning does not create partitions with sufficient number of cells, causing
the underestimation of number of targets. It is very important to note here that
Sub-Partitioning operation actually runs even when the targets are well separated
and does not cause any overestimation. Our observations show that this is a result
of the fact that additional partitions created (when γ̂ is selected too low) cannot
win over single target partitions when the targets measurements are distributed
in a blob shape. It is only when the two targets approach each other resulting in
an eight-shaped cluster of measurements that the additional partition can gain
248 Paper E Extended Target Tracking Using a Gaussian-Mixture PHD Filter
4
Sum of weights
3
100
2
80
1
60
0
10 40
15
20 20
25 Time
0
30
γ̂
dominance over the single target partition. This property, though not proved
mathematically, is considered to be a manifestation of the Poisson property and
the Gaussianity assumptions underlying the measurements.
If the cardinality estimates of the algorithms are rounded to the nearest integer,
an interesting property observed with Figure 8 is that no cardinality error ap-
pears for the cases that satisfy
p p
γ̂ − γ̂ ≤ γ ≤ γ̂ + γ̂. (32)
Thus, when the true parameter
p γ lies in the interval determined by the mean (γ̂)
± one standard deviation ( γ̂), cardinality is expected to be estimated correctly
even for close targets.
Targets of Different Size
In many scenarios, it is possible to encounter multiple targets of different sizes,
thus producing a different number of measurements. This means that two targets
would not have the same Poisson rate γ. In this section, the results are presented
for a scenario with two targets with measurement generating Poisson rates of 10
and 20, respectively. In Monte Carlo simulations, three et-gm-phd-filter were
run with the parameter γ̂ set to 10, 15 and 20, respectively. This corresponds to
using either the true value of the smaller target, the mean of both, or the true
value of the larger target. The results, in terms of average sum of weights over
time are shown in Figure 9. When the targets are spatially separated, all three
filters perform equally well. However, when the targets are spatially close, the
target with γ̂ set to the mean of the true γs performs better than the others.
7 Experiment Results 249
2.5
Sum of weights
2
1.5
10
1 15
20
10 20 30 40 50 60 70 80 90 100
Time
Discussion
The simulation results above show that the et-gm-phd-filter works well even
when γ̂ , γ, except when γ < 5 or targets are spatially close. For γ < 5, the filter
is more sensitive, and a correct value for γ̂ is increasingly important. For targets
that are spatially close, it is important for γ̂ to be a good estimate of γ, since the
Sub-Partition algorithm relies on γ̂. When such a good estimate is unavailable, a
more advanced sub-partitioning algorithm seems to be necessary for robustness.
With the proposed sub-partitioning procedure in this work, our findings support
the intuitive conclusion that the true parameter γ should be in one standard
deviation uncertainty region around the mean γ̂ of the Poisson distribution for a
reasonable performance for close targets.
The simulation with different target sizes shows that the close target case in this
example is harder to tackle than the others. A possible solution is to adaptively es-
timate the parameters γ̂ for each Gaussian mixture component based on the pre-
vious measurements. Another solution, which is possibly more straightforward,
is to use a state dependent γ̂ parameter, where the state contains information
about the target extent, which can readily be estimated, see e.g. Granström et al.
(2011b); Lundquist et al. (2011); Baum et al. (2010); Baum and Hanebeck (2011);
Zhu et al. (2011). Using the estimated shape and size, and a model of the sensor
that is used, γ̂ can then be estimated with reasonable accuracy. This has indeed
recently been performed using an et-gm-phd-filter Granström et al. (2011b).
7 Experiment Results
This section presents results from experiments with data from two data sets ac-
quired with a laser range sensor. The experiments are included more as a proof
of concept and as a potential application, rather than as an exhaustive evaluation
of the presented target tracking filter. The measurements were collected using a
sick lms laser range sensor. The sensor measures range every 0.5◦ over a 180◦
surveillance area. Ranges shorter than 13 m were converted to (x, y) measure-
ments using a polar to Cartesian transformation.
250 Paper E Extended Target Tracking Using a Gaussian-Mixture PHD Filter
The two data sets contain 411 and 400 laser range sweeps in total, respectively.
During the data collection humans moved through the surveillance area, entering
the surveillance area at different times. The laser sensor was at the waist level of
the humans.
Since there is no ground truth available it is difficult to obtain a definite measure
of target tracking quality, however by examining the raw data we were able to
observe the true cardinality, which can thus be compared to the estimated cardi-
nality.
Section 7.1 presents results from an experiment with spatially close targets, and
Section 7.2 presents results from an experiment with both spatially close targets
and occlusion.
12
10
y [m] 6
0
−10 −5 0 5 10
x [m]
(a)
2
No. ext. targets
1.5
0.5
0
0 50 100 150 200 250 300 350 400 450
Time
(b)
2.5
Sum of weights
1.5
0.5
0
0 50 100 150 200 250 300 350 400 450
Time
(c)
Figure 10: Experiment results, two human targets moving close to each
other. Note that in (a) the gray scale indicates the time line, lighter gray
is earlier time steps, darker is later time steps. In (b), the number of ex-
tracted targets (black) is compared to the ground truth (gray). In (c) the sum
of weights is shown. Around time 320 the cardinality is underestimated for
three time steps.
covariance and the weights of the Gaussian components. The intuition behind
this idea is that the knowledge of the targets that are present, i.e. the knowledge
of the estimated Gaussian components of the phd, can be used to determine what
parts of the surveillance area are likely to be in view of the sensor, and which
parts are not. Leaving the details of the variable pD calculation to Appendix A.2,
252 Paper E Extended Target Tracking Using a Gaussian-Mixture PHD Filter
12
10
y [m] 6
0
−10 −5 0 5 10
x [m]
(a)
3
No. ext. targets
2.5
1.5
0.5
0
0 50 100 150 200 250 300 350 400
Time
(b)
3.5
3
Sum of weights
2.5
1.5
0.5
0
0 50 100 150 200 250 300 350 400
Time
(c)
Figure 11: Experiment results, targets moving in and out of occluded regions
of the surveillance area. Note that in (a) the gray scale indicates the time line,
lighter gray is earlier time steps, darker is later time steps. In (b), the number
of extracted targets (black) is compared to the ground truth (gray). In (c) the
sum of weights is shown.
ing algorithms. A comparison of such algorithms with the et-gm-phd filter can
illustrate the advantage coming from the use of the random set framework.
254 Paper E Extended Target Tracking Using a Gaussian-Mixture PHD Filter
A Appendix
A.1 Proof of Theorem 10
The proof is composed of two parts.
• We first prove that there is a partition satisfying the conditions of the theo-
rem. The proof is constructive. Consider the algorithm in Algorithm 13.
In the algorithm, one first forms a partition formed of singleton sets of the
individual measurements and then combine the cells of this cluster until
conditions of the theorem are satisfied.
• We need to prove that the partition satisfying the conditions of the theorem
is unique. The proof is by contradiction. Suppose that there are two parti-
tions pi and pj satisfying the conditions of the theorem. Then, there must
j
be a measurement zm ∈ Z such that the cells Wmi i 3 zm and Wmj 3 zm are
j
different, i.e., Wmi i , Wmj . This requires an additional measurement zn ∈ Z
j
that is in one of Wmi i , Wmj but not in the other. Without loss of general-
j
ity, suppose zn ∈ Wmi i and zn < Wmj . Then since zn ∈ Wmi i , we know that
j
d z(m) , z(n) ≤ d` . However, this contradicts the fact that zn < Wmj which
means that pj does not satisfy the conditions of the theorem. Then our ini-
tial assumption that there are two partitions satisfying the conditions of the
theorem must be wrong. The proof is complete.
(i)
Here, Pp is the position covariance of the ith component and uϕ (i) is the
unit vector orthogonal to the range direction from the ith component to the
sensor.
• The constant term σs is used to scale the bearing standard deviation.
Intuitively, the operation of (34) is to reduce the nominal probability of detection
at a point depending on the weights, means and standard deviations of the com-
ponents of the last estimated phd which have smaller range values than the range
of the point also taking into account the angular proximity of such components
to the bearing of the point in the exponential function in (34).
256 Paper E Extended Target Tracking Using a Gaussian-Mixture PHD Filter
Bibliography
D. Arthur and S. Vassilvitskii. k-means++: The Advantages of Careful Seeding.
In Proceedings of the ACM-SIAM symposium on Discrete algorithms, pages
1027–1035, Philadelphi, PA, USA, January 2007.
M. Baum and U. D. Hanebeck. Shape tracking of extended objects and group
targets with star-convex RHMs. In Proceedings of the International Conference
on Information Fusion, pages 338–345, Chicago, IL, USA, July 2011.
M. Baum, B. Noack, and U. D. Hanebeck. Extended object and group tracking
with elliptic random hypersurface models. In Proceedings of the International
Conference on Information Fusion, pages 1–8, Edinburgh, UK, July 2010.
C. M. Bishop. Pattern recognition and machine learning. Springer, New York, NY,
USA, 2006. ISBN 0-387-31073-8.
Y. Boers, H. Driessen, J. Torstensson, M. Trieb, R. Karlsson, and F. Gustafsson.
Track-before-detect algorithm for tracking extended targets. IEE Proceedings
of Radar, Sonar and Navigation, 153(4):345–351, August 2006.
D. E. Clark, K. Panta, and B.-N. Vo. The GM-PHD Filter Multiple Target Tracker.
In Proceedings of the International Conference on Information Fusion, Flo-
rence, Italy, July 2006.
O. Erdinc, P. Willett, and Y. Bar-Shalom. The bin-occupancy filter and its con-
nection to the PHD filters. IEEE Transactions on Signal Processing, 57(11):
4232–4246, November 2009.
K. Gilholm and D. Salmond. Spatial distribution model for tracking extended
objects. IEE Proceedings of Radar, Sonar and Navigation, 152(5):364–371, Oc-
tober 2005.
K. Gilholm, S. Godsill, S. Maskell, and D. Salmond. Poisson models for extended
target and group tracking. In Proceedings of Signal and Data Processing of
Small Targets, volume 5913, pages 230–241, San Diego, CA, USA, August 2005.
SPIE.
K. Granström, C. Lundquist, and U Orguner. A Gaussian mixture PHD filter for
extended target tracking. In Proceedings of the International Conference on
Information Fusion, Edinburgh, UK, July 2010.
K. Granström, C. Lundquist, and U. Orguner. Extended target tracking using a
Gaussian-mixture PHD filter. IEEE Transactions on Aerospace and Electronic
Systems, 2011a. Under review.
K. Granström, C. Lundquist, and U Orguner. Tracking rectangular and elliptical
extended targets using laser measurements. In Proceedings of the International
Conference on Information Fusion, Chicago, IL, USA, July 2011b.
T. Hastie, R. Tibshirani, and J. H. Friedman. The elements of statistical learning :
Bibliography 257
data mining, inference, and prediction. Springer, New York, NY, USA, 2 edition,
2009.
K. Panta, D. E. Clark, and Ba-Ngu Vo. Data association and track management for
the Gaussian mixture probability hypothesis density filter. IEEE Transactions
on Aerospace and Electronic Systems, 45(3):1003–1016, July 2009.
D. Schuhmacher, B.-T. Vo, and B.-N. Vo. A consistent metric for performance
evaluation of multi-object filters. IEEE Transactions on Signal Processing, 56
(8):3447–3457, August 2008.
B.-N. Vo and W.-K. Ma. The Gaussian mixture probability hypothesis density
filter. IEEE Transactions on Signal Processing, 54(11):4091–4104, November
2006.
H. Zhu, C. Han, and C. Li. An extended target tracking method with random
finite set observations. In Proceedings of the International Conference on In-
formation Fusion, pages 73–78, Chicago, IL, USA, July 2011.
Paper F
Estimating the Shape of Targets with
a PHD Filter
Abstract
This paper presents a framework for tracking extended targets which
give rise to a structured set of measurements per each scan. The con-
cept of a measurement generating point (mgp) which is defined on
the boundary of each target is introduced. The tracking framework
contains an hybrid state space where mgps and the measurements are
modeled by random finite sets and target states by random vectors.
The target states are assumed to be partitioned into linear and non-
linear components and a Rao-Blackwellized particle filter is used for
their estimation. For each state particle, a probability hypothesis den-
sity (phd) filter is utilized for estimating the conditional set of mgps
given the target states. The phd kept for each particle serves as a use-
ful means to represent information in the set of measurements about
the target states. The early results obtained show promising perfor-
mance with stable target following capability and reasonable shape
estimates.
1 Introduction
In target tracking, the task is to detect, track and identify an unknown number
of targets using measurements that are affected by noise and clutter. In recent
years, so called extended target tracking has received increasing research atten-
tion. In extended target tracking, the classic point target assumption is relaxed
and the target tracking framework is modified to handle multiple measurements
per target and time step. The multiple measurements per target raise interest-
ing possibilities to estimate the target’s size and shape in addition to the target’s
position, velocity and heading. Typical sensors where targets cause multiple mea-
surements are cameras, automotive radars and laser range sensors – especially
cameras and laser range sensors give measurements with a high degree of struc-
ture.
Using finite set statistics (fisst) Mahler has derived rigorous tools for multiple tar-
261
262 Paper F Estimating the Shape of Targets with a PHD Filter
get tracking, see Mahler (2003) and Mahler (2007). In the Probability Hypothesis
Density filter (phd-filter) the targets and measurements are treated as random
finite sets (rfs); an implementation where the phd-intensity is approximated
using a mixture of Gaussians has been presented in Vo and Ma (2006). An ex-
tension of the phd-filter to handle extended targets that give Poisson distributed
measurements, as in Gilholm et al. (2005), was given in Mahler (2009). A Gaus-
sian mixture implementation of this extended target phd-filter was recently pre-
sented in Granström et al. (2010).
In the recent work by Mullane et al. Mullane et al. (2011), the Simultaneous Local-
ization and Mapping (slam) problem was addressed using a Bayesian approach.
The measurements and feature map is modeled using rfs, giving a framework
in which the number and location of map features is jointly estimated with the
vehicle trajectory. A Rao-Blackwellized implementation is suggested where the
vehicle trajectory is estimated with a particle filter and the map is handled using
a Gaussian-mixture (gm-phd) filter.
In this paper, the ideas presented in Mullane et al. (2011) are utilized to solve
the problem of estimating the shape of an extended target. The sensors men-
tioned earlier typically obtain point measurements from reflection points on the
surface of the target. The realizations of the reflection points in this framework
are called measurement generating points (mgps) and their positions on the tar-
get are estimated as a means to estimate the shape, size and position of the target.
By considering the mgp as an rfs it is possible to create a measurement model
which better adapts to the actual and visible reflection points of the target. The
target state vector is estimated using a particle filter, and the rfs of mgps are esti-
mated with a gm-phd-filter. The target’s state vector is too large to be efficiently
estimated with a particle filter, and the linear and nonlinear parts are therefore
partitioned and estimated in a marginalized or Rao-Blackwellized particle filter,
see e.g., Schön et al. (2005). The joint estimation of the target density and the den-
sity of the mgps on the boundary leads to a Rao-Blackwellized implementation
of the joint particle and phd filter.
Modeling of extended targets in this work is very similar to active contours Blake
and Isard (1998) and snakes Kass et al. (1988), which model the outline of an
object based on 2 dimensional image data, studied extensively in computer vi-
sion. Detecting and identifying shapes in cluttered point clouds has been stud-
ied in Srivastava and Jermyn (2009), where the mgps on the surface of the target
are denoted samples. The underlying low-level processing involved assumes rea-
sonably the existence of image data from which features (like Harris corners) or
feature maps (like Harris measures etc.) can be extracted. The so-called Conden-
sation algorithm Isard and Blake (1998), for example, searches for suitable sets
of features in the image data (or in the feature map) iteratively for each of its dif-
ferent hypotheses (particles) in the calculation of the likelihoods. The approach
presented in this work carries the distinction of working only with a single set
of measurement points provided most of the time by thresholding of the raw
sensor data (like conventional target tracking) and hence is mainly aimed at ap-
2 The RFS Extended Target Model 263
plications where the users (of the sensors) either are unable to reach or do not
have the computation power to work with the raw sensor data. The mapping of
the boundaries of complex objects is also achieved in Lazarus et al. (2010) using
splinegon techniques and a range sensor such as e.g., laser mounted on moving
vehicles.
There are also several other approaches to extended target tracking in the litera-
ture. Gilholm presents in Gilholm and Salmond (2005); Gilholm et al. (2005) an
approach where it is assumed that the number of received target measurements
is Poisson distributed, hence several measurements may originate from the same
target. In Boers et al. (2006) a similar approach is presented where raw data is
considered in a track-before-detect framework and no data association is needed.
Monte Carlo methods are applied to solve the extended target tracking problem
in Vermaak et al. (2005); Angelova and Mihaylova (2008) and random matrices
are used by Koch in Koch (2008).
The paper is organized as follows. Section 2 introduces the rfs of measurements
and mgps as well as the model of the target. The filter framework is described in
Section 3 and an implementation is given in Section 4. A simple example with
simulation results is shown in Section 5. Section 6 contains conclusions and some
thoughts on future work.
where k refers to discrete time. One way to associate the point measurements
to the target is to consider a number of reflection points, called measurement
generating points (mgp) in this work, on the surface of the target. A mgp is
defined on a one dimensional coordinate axis denoted as s ∈ R on the boundary
of the target, which can generally be restricted to an interval [smin , smax ] called
the mgp-space. All mgps belonging to a single target may be modeled as a finite
set shown as
(1) (sk )
Sk = sk , . . . , sk . (2)
A simple example is shown in Figure 1, where visible mgps and point measure-
ments are illustrated.
264 Paper F Estimating the Shape of Targets with a PHD Filter
11.5
11
10.5
y [m]
10 (i)
sk
(m)
zk
9.5
In a Bayesian framework, the states and the measurements are treated as realiza-
tions of random variables. Since in this case both the measurements and the mgps
are represented by finite sets, the concept of rfs is required for the Bayesian esti-
mation of the target state. An rfs is a finite set valued random variable, whose el-
ements are random variables and the number of elements are treated as a random
non-negative integer variable. In a filtering and estimation framework the proba-
bility density is a very useful descriptor of an rfs. Standard tools and notation to
compute densities and integrations of random variables are not appropriate for
rfs and therefore finite set statistics fisst, developed by Mahler Mahler (2003)
as a practical mathematical tool to deal with rfs, has to be applied.
Consider again the target in Figure 1, and let S be the rfs of all mgps on the
surface of the target. Furthermore let Sk ⊂ S be the detectable mgps. As the
target moves new mgps might become visible to the sensor, either by observing a
new side of the object or by observing new reflection points, e.g., a wheel arch of
a car, becoming visible when the angle between the target and the sensor changes.
The new mgps are modeled by an independent rfs Bk (xk ) ⊂ S depending on the
target state xk . The set of visible mgps evolves in time as
Sk = Fk (Sk−1 ) ∪ Bk (xk ). (3)
where Fk ( · ) is a set function modeling the survival (or death) of the previous
2 The RFS Extended Target Model 265
where pS ( · |Sk−1 ) is the transition density of the observable set of mgps, i.e., those
who are in the field of view of the sensor, and pB ( · |xk ) is the density of the rfs
Bk (xk ) of the new visible mgps. Furthermore, the target dynamics is modeled
by a standard Markov process with transition density p(xk |xk−1 ) and the joint
transition density of the target and its mgps is
p(Sk , xk |Sk−1 , xk−1 ) = p(Sk |Sk−1 , xk )p(xk |xk−1 ). (5)
The rfs of measurements Zk received at time k by the sensor from a target with
state vector xk and rfs Sk of mgp is modeled as
[
Zk = Hk (s, xk ) ∪ Ck (6)
s∈Sk
where Hk (s, xk ) is the rfs of measurement produced by the mgps modeling also
the non-perfect detection process and C is the clutter rfs. The rfs of measure-
ments produced by a mgp is modeled by a Bernoulli rfs, i.e., it is Hk (s, xk ) = ∅
with probability 1 − PD (s|xk ) and Hk (s, xk ) = {z} with the probability density
PD (s|xk )p(z|s, xk ), cf. Mahler (2007). The probability of detection is denoted by
PD (s|xk ) defined over the mgp-space, and p(z|s, xk ) is the likelihood that the mgp
s produces the measurement z. The likelihood function of the measurement rfs
Zk is
X
p(Zk |xk , Sk ) = pZ (Z̄|Sk , xk )pC (Zk − Z̄|xk ) (7)
Z̄⊆Zk
The relation between the shape of the target and some of the state components
is highly nonlinear and this makes an application of the particle filter suitable.
Suppose that the target state xk can be partitioned into a nonlinear and a linear
part according to
h iT
xk = xnk xlk , (8)
the state space model for xk is given by
xnk+1 = fkn (xnk ) + Fkn (xnk )xlk + wnk (9a)
xlk+1 = fkl (xnk ) + Fkl (xnk )xlk + wlk . (9b)
For a single measurement, the measurement model is given by
n
N ( · ; ẑk (xk , sk ), Rk ) if z target generated
zk ∼ (9c)
ck ( · )
if z clutter generated
266 Paper F Estimating the Shape of Targets with a PHD Filter
where
ẑk (xnk , sk ) = hnk (xnk , sk ) + Hk (xnk )xlk (9d)
The process noise wk is assumed to be
" n#
Qkn
" #
w 0
wk = kl ∼ N (0, Qk ), Qk = (10)
wk 0 Qkl
and the process covariance is here assumed to be diagonal. The measurement
(i)
noise is modeled as ek ∼ N (0; Rk ). The mgps sk are assumed to be stationary
on the boundary of the target and the motion model for them is selected to be a
random walk model.
3 Filtering Framework
n l
The aim of the filtering algorithm is to estimate p(x1:k , x1:k , Sk |Z0:k ), the joint pos-
terior given the set of measurements Z0:k . The posterior may be factorized ac-
cording to
n
p(x1:k , xlk , Sk |Z0:k ) = p(xlk |x0:k
n n
, Sk , Z0:k )p(Sk |x0:k n
, Z0:k )p(x1:k |Z0:k ) (11)
and the three posteriors for the states of a target xlk , xnk and the mgps Sk =
(1) (s )
{sk , . . . , sk k } can be computed separately. However, since the filter recursion
n
needed to estimate the probability density of the mgp rfs p(Sk |x0:k , Z0:k ) includes
set integrals it is numerically intractable, and it is necessary to find a tractable ap-
proximation. The first order moment of an rfs is represented by a phd, denoted
D. For the rfs Sk , the phd is a nonnegative function, such that for each region S
in the space of mgps
Z
Dk (x)dx = E(|Sk ∩ S|) = ŝk (12)
S
where ŝk is the expected number of elements in the region S, and the peaks of
the phd indicates locations of mgps with high probability. If the cardinality of
elements in the rfs Sk is Poisson distributed and the elements are i.i.d., then the
probability density of Sk can be computed from the phd according to
Q
s∈Sk Dk (s)
p(Sk ) = R . (13)
exp( Dk (s)ds)
The phd-filter propagates the phd of an rfs in time and provides a reasonable
approximation to the multitarget Bayesian filter. The filter recursion for the joint
rfs and target state posterior density is described in the following. First the tar-
get state and the mgps are predicted as described in section 3.1 and thereafter a
measurement update of the mgps and the target states is performed as described
in Section 3.2.
3 Filtering Framework 267
3.1 Prediction
n
p(Zk |Sk , xnk )p(Sk |x0:k
n
, Z0:k−1 )
p(Sk |x0:k , Z0:k ) = n . (22)
p(Zk |Z0:k−1 , x0:k )
Like the case in the prediction, the posterior is approximated by a Poisson rfs
with phd D(sk |x0:k , Z0:k ) as
Q
s∈Sk D(s|x0:k , Z0:k )
p(Sk |x0:k , Z0:k ) ≈ R (23)
exp( D(s|x0:k , Z0:k )ds)
cf. (13). Using this approximation and the measurement model (6), the phd cor-
rector equation is given by
"
Dk (s|x0:k ) = Dk|k−1 (s|x0:k ) 1 − PD (s|xk )
#
X Λ(zk |sk , x)
+ R (24)
z∈Z
λc k (z) + Λ(z k |ζ, x k )D k|k−1 (ζ|x 0:k )dζ
k
where
Λ(zk |sk , xk ) = PD (sk |xk )p(zk |sk , xk ). (25)
For clarity the abbreviation
Dk (s|x0:k ) , D(sk |x0:k , Z0:k ) (26)
is used.
n n
p(xnk |xnk−1 )p(x1:k−1
n
|Z0:k−1 )
p(x1:k |Z0:k ) =p(Zk |Z0:k−1 , x0:k ) . (28)
p(Zk |Z0:k−1 )
n
The term p(Zk |Z0:k−1 , x0:k ) is given by a set integration over Sk , according to
Z
n n
p(Zk |Z0:k−1 , x0:k ) = p(Zk , Sk |Z0:k−1 , x0:k )δSk . (29)
n
To avoid the set integral, note that p(Zk |Z0:k−1 , x0:k ) is the normalization constant
in (22), hence it may be rewritten according to
n
p(Zk |Sk , xnk )p(Sk |x0:k
n
, Z0:k−1 )
p(Zk |Z0:k−1 , x0:k )= n . (30)
p(Sk |x0:k , Z0:k )
Note that Sk is only contained in the RHS, thus the relation holds for arbitrary
choices of Sk . We substitute here the last estimated Sk by making further approx-
imations as follows. Using the Poisson rfs approximations (18) and (23) and the
3 Filtering Framework 269
n
p(Zk |Sk , xnk )p(Sk |x0:k
n
, Z0:k−1 )
p(Zk |Z0:k−1 , x0:k )= n
p(Sk |x0:k , Z0:k )
Q
s∈Sk Dk|k−1 (s|x0:k )
R
exp( Dk|k−1 (s|x0:k )ds)
≈ p(Zk |Sk , xnk ) Q
| {z } s∈Sk Dk (s|x0:k )
R
exp( Dk (s|x0:k )ds)
,A
Q R
Dk|k−1 (s|x0:k ) exp( Dk (s|x0:k )ds)
s∈Sk
=A Q R (31a)
s∈Sk Dk (s|x0:k ) exp( Dk|−1 (s|x0:k )ds)
| {z }| {z }
,B ,C
where
(i) (i) (i)
Y Y
A≈ (λc(z) + PD (sk )p(z(i) |sk , xnk )) (1 − PD (sk )) (31b)
z∈Z s∈S̄k
with the ith mgp being the one closest to measurement i according to
(i)
s(i) = arg min ||zk − s|| (31c)
s∈Sk
z
S̄k = Sk \{s(i) }i=1
k
(31d)
Furthermore,
ŝk
Y 1
B= (i)
(31e)
Λ(z|sk ,xk )
(1 − PD (s(i) )) +
P
i=1
z∈Z λc(z)+ Λ(z|ζ,x )D (ζ|x )dζ
R
k k 0:k
7. The joint posterior is now given by multiplying the separate posteriors from
(21), (27) and (33) as
n l l n b n n
p(x1:k , x1:k , Sk |Z0:k ) ≈ p(x1:k |x0:k , Sk , Z0:k )p(Sk |x0:k , Z0:k )p(x1:k |Z0:k ) (35)
4 RBPF-PHD Implementation
A Rao-Blackwellized implementation is utilized to estimate the target state. The
nonlinear target state xn is propagated with a particle filter and the linear state
vector is propagated with a Kalman filter. The mgps are described by a set Sk ,
(i)
which are estimated with a phd-filter. There exists one phd Dk ( · ) for each
particle i of the target state. The overall summary statistics is represented by
N
(i) n,(i) l,(i) l,(i) (i) (i)
wk , x0:k , x̂k , Pk , Dk (s|x0:k ) (36)
i=1
where
n,(i)
• x0:k is the ith particle for the nonlinear part of the target state.
l,(i) l,(i)
• x̂k , Pk are the ith mean and covariance for the linear part of the target
state.
(i)
• wk is the weights for the ith particle of the target state.
(i) (i)
• Dk (s|x0:k ) is the phd representing the mgps for the ith particle of the target
state.
(i) (i)
In this work the phd Dk (s|xk ) is represented with by a Gaussian mixture and a
realization of the gm-phd filter recursion is described in Section 4.1, see also Vo
and Ma (2006). The update of the nonlinear state components based on the phd
is described in Section 4.2, and a pseudo code for the proposed filter is given in
Section 4.3.
The prediction of mgps in the motion model (3) is given by the union of prior
mgps and new mgp, which is approximated by the phd prediction equation (19).
The resulting predicted phd represented by a Gaussian mixture is then given as
(i)
Jk|k−1
(i) (i) (i,j) (i,j) (i,j)
X
Dk|k−1 (s|xk ) = ηk|k−1 N s, µk|k−1 , Pk|k−1 . (38)
j=1
The transition density is chosen as the proposal distribution and hence the parti-
cles are sampled as
n,(i) n,(i) n,(i)
xk ∼ p(xk |x0:k−1 ) (41a)
(i) (i) (i)
wk = p(Zk |Z0:k−1 , x0:k )wk−1 (41b)
where the prediction can be done using (9a) with the substitution of the last es-
timated values of the linear components. Note that the linear components are
treated as noise here and that therefore the process noise is
n,(i) l,(i) n,(i)
Qkn + Fkn (xk−1 )Pk−1 (Fkn (xk−1 ))T
272 Paper F Estimating the Shape of Targets with a PHD Filter
when sampling the particles. The update of the weights can be computed accord-
ing to (31), where
(i) (i)
Jk|k−1 J
k|k
(i) (i,j) (i) (i,j)
X X
ŝk|k−1 = ηk|k−1 and ŝk = ηk (42)
j=1 j=1
are the sums of the predicted and updated phd weights for the ith particle.
4.3 Algorithm
The algorithm is given in Algorithm 14. The state estimates are extracted by
taking the weighted mean
N
1 X (i) (i)
x̂k = P (i)
wk xk . (43)
wk i=1
The mgps must not be extracted since they are only considered as a mean to
estimate the target state.
(i)
(i) n,(i) l,(i) (i) (i) (i) (i) i,j (i,j) (i,j) J
53: return {wk , xk , x̂k , Pk , Dk }N k
i=1 and ŝk , with Dk = {ηk , µk , Σk }j=1
5 Simulation Example
In this section, we are going to use a simple example to illustrate the filtering
solution we propose. In this example, we use the following specific target and
measurement models.
A mgp is defined on a coordinate s along the border of the target which has
a spline representation of order d. In this case, the measurement model (9d)
may be written according to
h iT
ẑ = h(xn , S) + x y (47a)
5 Simulation Example 275
with
" #
n ΠBσ G σ 0
h(x , S) = Rot(ψ) Γ (47b)
0 ΠBσ G σ
h i
Π = 1 s s2 · · · sd−1 (47c)
where Rot is a rotation matrix, Bσand Gσ
is a basis matrix and a placement
matrix, respectively. The vector Γ includes the shape parameters t. Spline
curves are well described in e.g., Blake and Isard (1998).
A nice property using spline curves is that they are continuously differen-
tiable, which is important if the ekf is utilized to update the Gaussian com-
ponents of the phd, compare with Line 19 in Algorithm 14. The derivative
of the measurement model (47a) with respect to mgps is
∂
∇Hk = h (xn , s) (48a)
∂s k " #
∇ΠBσ G σ 0
= Rot(ψ) Γ (48b)
0 ∇ΠBσ G σ
h i
∇Π = 0 1 s · · · (d − 1)sd−2 (48c)
In the models above, it is obvious that the center position x, y and velocity v of
the target are linear in the motion and in the measurement model. The heading ψ
and target shape state t are nonlinear, hence the state vector may be partitioned
as
h iT
xl = x y v (49a)
h iT
xn = ψ t . (49b)
Comparing (9d) and (47a) the linear measurement matrix is
" #
1 0 0
H= (50)
0 1 0
Note that the mgps s are given by a one dimensional position along the border,
and that they are highly nonlinear in the measurement model (47a) which justi-
fies the use of particle filter.
A rectangle target is considered in this simulation. The shape state is the length l
and width w. The vector Γ is
[l 0 −l −l −l 0 l l l ...
Γ = (51)
... −w −w −w 0 w w w 0 −w]T
A d = 3 order spline is considered. In the simulation the extended target moves
from right to left throughout the surveillance area. The orientation of the target
is 0rad and the length and width are l = 5m and w = 2.5m respectively. The
target trajectory and the surveillance region of the sensor located at the origin
are illustrated in Figure 2. As seen from the figure, the target starts far from the
276 Paper F Estimating the Shape of Targets with a PHD Filter
50
40
30
y [m]
20
10
sensor and hence has few measurements initially. Neither width nor the length
of the target is observable. As the target travels towards the sensor, the length
and the width observability increases first but when the target starts to get close
to the sensor, the width observability is lost again in which case only the length of
the target is visible. When the target passes by the sensor the width becomes once
more observable. With the distance between the target and the sensor increasing
towards the end of the scenario, observability of both quantities decrease.
The position estimation results are shown in Figure 3. Clearly the algorithm can
follow the target along the x-axis. The shape estimates are illustrated in Figure 4.
As predicted the shape estimates degrade as the target gets further from the sen-
sor. Though the variance of the estimates are large at times, the algorithm seems
to be capable of keeping them at a smaller level than the initial values. As the
target approaches the sensor, the general trend in the variances is to decrease
though there exist also occasional increases. Further investigations must be done
with various initializations and stability and the robustness must be evaluated
more thoroughly in the future work.
6 Conclusions
In this work a new approach to track extended targets has been presented. Point
measurements are produced by an unknown number of measurement generating
points (mgps) on the surface of the target. These mgps are modeled as a random
finite set rfs and used as a means to estimate the shape, the size and the position
of a target. The state of the target is propagated with Rao-Blackwellized parti-
cle filter (nonlinear part) and Kalman filters (linear part); the measurements are
processed with a gm-phd-filter.
First simulation results show that this approach is promising. A simple rectangu-
6 Conclusions 277
Figure 3: The position estimates (x and y) of the algorithm. The true quanti-
ties are shown with grey lines. The mean x and y estimates are in black lines
and their 4 standard deviation uncertainty calculated from the particles are
illustrated with grey clouds around the estimates.
Figure 4: The length and the width estimates of the algorithm. The true
quantities are shown with grey lines. The mean length and width estimates
are in black lines and their 4 standard deviation uncertainty calculated from
the particles are illustrated with grey clouds around the estimates.
278 Paper F Estimating the Shape of Targets with a PHD Filter
lar target is followed with a rather stable performance and it remains for future
fork to estimate the shape of more complex targets. The next step will be to vali-
date the proposed method on more challenging real data collected on e.g., a road,
where different type of shapes, such as pedestrians and vehicles are visible. The
stability and robustness must also be evaluated thoroughly with different initial-
izations and settings.
Bibliography 279
Bibliography
D. Angelova and L. Mihaylova. Extended object tracking using Monte Carlo meth-
ods. IEEE Transactions on Signal Processing, 56(2):825–832, February 2008.
A. Blake and M. Isard. Active contours. Springer, London, UK, 1998.
Y. Boers, H. Driessen, J. Torstensson, M. Trieb, R. Karlsson, and F. Gustafsson.
Track-before-detect algorithm for tracking extended targets. IEE Proceedings
of Radar, Sonar and Navigation, 153(4):345–351, August 2006.
K. Gilholm and D. Salmond. Spatial distribution model for tracking extended
objects. IEE Proceedings of Radar, Sonar and Navigation, 152(5):364–371, Oc-
tober 2005.
K. Gilholm, S. Godsill, S. Maskell, and D. Salmond. Poisson models for extended
target and group tracking. In Proceedings of Signal and Data Processing of
Small Targets, volume 5913, pages 230–241, San Diego, CA, USA, August 2005.
SPIE.
K. Granström, C. Lundquist, and U Orguner. A Gaussian mixture PHD filter for
extended target tracking. In Proceedings of the International Conference on
Information Fusion, Edinburgh, UK, July 2010.
M. Isard and A. Blake. CONDENSATION-conditional density propagation for
visual tracking. International Journal of Computer Vision, 29(1):5–28, August
1998.
M. Kass, A. Witkin, and D. Terzopoulos. Snakes: Active contour models. Inter-
national Journal of Computer Vision, 1(4):321–331, January 1988.
J. W. Koch. Bayesian approach to extended object and cluster tracking using
random matrices. IEEE Transactions on Aerospace and Electronic Systems, 44
(3):1042–1059, July 2008.
S. Lazarus, A. Tsourdos, B.A. White, P.M.G. Silson, and R. Zandbikowski. Air-
borne vehicle mapping of curvilinear objects using 2-D splinegon. IEEE Trans-
actions on Instrumentation and Measurement, 59(7):1941–1954, July 2010.
C. Lundquist, K. Granström, and U. Orguner. Estimating the shape of targets with
a PHD filter. In Proceedings of the International Conference on Information
Fusion, Chicago, IL, USA, July 2011.
R. P. S. Mahler. Multitarget Bayes filtering via first-order multitarget moments.
IEEE Transactions on Aerospace and Electronic Systems, 39(4):1152–1178, Oc-
tober 2003.
R. P. S. Mahler. Statistical Multisource-Multitarget Information Fusion. Artech
House, Boston, MA, USA, 2007.
R. P. S. Mahler. PHD filters for nonstandard targets, I: Extended targets. In
280 Paper F Estimating the Shape of Targets with a PHD Filter
Preliminary version:
Technical Report LiTH-ISY-R-3029, Dept. of Electrical Engineering, Lin-
köping University, SE-581 83 Linköping, Sweden.
Tire Radii and Vehicle Trajectory Estimation
Using a Marginalized Particle Filter
Abstract
Measurements of individual wheel speeds and absolute position from
a global navigation satellite system (gnss) are used for high-precision
estimation of vehicle tire radii in this work. The radii deviation from
its nominal value is modeled as a Gaussian process and included as
noise components in a vehicle model. The novelty lies in a Bayesian
approach to estimate online both the state vector of the vehicle model
and noise parameters using a marginalized particle filter. No model
approximations are needed such as in previously proposed algorithms
based on the extended Kalman filter. The proposed approach out-
performs common methods used for joint state and parameter esti-
mation when compared with respect to accuracy and computational
time. Field tests show that the absolute radius can be estimated with
millimeter accuracy, while the relative wheel radius on one axle is
estimated with submillimeter accuracy.
1 Introduction
Tire pressure monitoring has become an integral part of todays’ automotive ac-
tive safety concept Velupillai and Guvenc (2007). With the announcement of the
us standard (fmvss 138) and the European standard (ece r-64) vehicle manufac-
turer must provide a robust solution to early detect tire pressure loss. A direct
way to measure the tire pressure is to equip the wheel with a pressure sensor and
transmit the information wireless to the vehicle body. In the harsh environment
that the tires are exposed to, e.g., water, salt, ice and heat, the sensors are error-
prone. Furthermore, the pressure sensors in each wheel is expensive and their
existence complicates the wheel changes. Therefore, indirect solutions have been
introduced on the market lately, see e.g., Persson et al. (2001). In this paper an
indirect approach is presented where the tire radius is estimated simultaneously
with the vehicle trajectory. This is done under the assumption that there is a
relation between a reduction in tire radius and tire pressure.
283
284 Paper G Tire Radii and Vehicle Trajectory Estimation Using a Marginalized PF
The indirect approach presented in Persson et al. (2001) is only based on the
wheel speed sensors and it is shown how a tire pressure loss in one wheel leads
to a relative radii error between the wheels. In later publications gps measure-
ments have also been included to improve the radius estimation and even make it
possible to estimate the absolute radius of one tire. The effective tire radius is es-
timated using a simple least-squares regression technique in Miller et al. (2001).
A non-linear observer approach to estimate the tire radius is presented in Carl-
son and Gerdes (2005), and a second order sliding mode observer is used to esti-
mate the tire radius in M’sirdi et al. (2006); Shraim et al. (2006). A simultaneous
maximum likelihood calibration and sensor position and orientation estimation
approach for mobile robots is presented in Censi et al. (2008), where among other
parameters the wheel radii are estimated. An observer based fault detection al-
gorithm, which detects tire radius errors using yaw rate measurement and a bi-
cycle model of the vehicle, is described in Patwardhan et al. (1997). An extended
Kalman filter based approach is presented in Ersanilli et al. (2009), where the tire
radius is estimated via vertical chassis accelerations.
In the present contribution the difference between the nominal and the actual
value of the tire radius is modeled as a Gaussian stochastic process, where both
the mean and the covariance are unknown and time varying. The vehicle dynam-
ics and the measurements are described by a general state space model and the
noise statistics are treated as the unknown parameters of the model. Hence the
joint estimation of the state vector and the unknown model parameters based
on available measurements is required. Such a problem is hard to treat as both
the state estimation and the parameter estimation stages affects the performance
of the other. The structure of this nonlinear problem with biased and unknown
noise requires utilizing approximative algorithms. The particle filter (pf) pro-
vides one generic approach to non-linear non-Gaussian filtering. Probably the
most common way to handle a joint parameter and state estimation problem is
by augmenting the state vector with the unknown parameters and redefine the
problem as a filtering problem, see e.g., Liu and West (2001); Julier and Durrant-
Whyte (1995); Ersanilli et al. (2009). The approach has some major disadvantages
as it requires artificial dynamics for the static parameters and it leads also to an
increase in the state dimension which is not preferable for particle filters. This
is particularly important to stress in automotive applications, where the compu-
tational cost must be kept low. In this work, an efficient Bayesian method is pro-
posed for approximating the joint density of the unknown parameters and the
state based on the particle filters and the marginalization concept, introduced
in Saha et al. (2010). The statistics of the posterior distribution of the unknown
noise parameters is propagated recursively conditional on the nonlinear states of
the particle filter. An earlier version of this work was presented in Özkan et al.
(2011), and the current, significantly improved version also includes comparisons
with other methods.
The proposed method is implemented and tested on real vehicle data. The state
augmentation technique is also implemented and tested, both using the pf and
the extended Kalman Filter (ekf) variants. Furthermore, a method where the
2 Model 285
unknown noise enters in the measurement signal instead of, as proposed, in the
input signal is presented for comparison. The proposed method, the two aug-
mented state methods and the measurement noise method are compared with re-
spect to estimation accuracy and robustness. The proposed method outperforms
the competitors both in the simulations and the real data.
The paper is outlined as follows. The problem is formulated together with the
vehicle model and with the description of the sensors in Section 2. The estimation
procedure and the filter approach is described in Section 3. The proposed method
is compared to common and similar methods described in the literature, and
these are summarized and put into the context in Section 4. Results based on real
data collected with a production type passenger car are presented in Section 5.
The work is concluded in Section 6.
2 Model
The aim of this work is to jointly estimate the vehicle trajectory and the unknown
tire radius errors based on the available measurements in a Bayesian framework.
Furthermore, the aim is to find appropriate models that can be recast into the
general state space model
xk+1 = f (xk , uk ) + g(xk , uk )wk , (1a)
yk = h(xk , uk ) + d(xk , uk )ek . (1b)
This model suits our noise parameter marginalized particle filter framework.
A four wheeled vehicle model, which is used to estimate the unknown variables
given the velocity and the position measurements, is introduced in this section.
More specifically, the angular velocities of the wheels and gps positions are con-
sidered as the inputs and the measurements, respectively. It is assumed that the
unknown wheel radii affect the vehicle state trajectory through the wheel speed
sensors. The state vector is defined as the planar position and the heading angle
of the vehicle,
h iT
x= x y ψ . (2)
The discrete time motion model for the evolution of the state is given as,
xk+1 = xk + T vk cos ψk (3a)
yk+1 = yk + T vk sin ψk (3b)
ψk+1 = ψk + T ψ̇k , (3c)
where vk is the vehicle longitudinal velocity, ψ̇k is the yaw rate of the vehicle and
T is the sampling time.
Furthermore, the angular velocities of the wheels ωi , i = 1 . . . 4, which are mea-
sured by the abs sensors at each wheel, can be converted to virtual measurements
of the absolute longitudinal velocity and yaw rate as described in Gustafsson et al.
(2001); Gustafsson (2010a). Assuming a front wheel driven vehicle with slip-free
286 Paper G Tire Radii and Vehicle Trajectory Estimation Using a Marginalized PF
since vvirt
k and ψ̇kvirt are functions of the wheel speeds.
2 Model 287
The motion model (7) can now be written in the form (1a), with
xk + T vvirt
k cos ψk
f (xk , uk ) = yk + T vvirt sin ψ (9a)
k k
virt
ψk + T ψ̇k
T ω cos ψ
3 2 k T ω4 cos 2
ψk
T ω3 sin ψk T ω4 sin ψk
g(xk , uk ) = 2 2
(9b)
− T ω3 T ω4
l t l
t
this factor.
In the following section the joint estimation of the unknown parameters and the
state is described in a Bayesian framework.
The estimation of the parameters is described in the next section, and we will
therefore return to this equation in Section 3.3 and give the final expression.
3 Parameter and State Estimation 289
The scalar real number 0 ≤ λ ≤ 1 is the forgetting factor. The forgetting factor
here helps in the estimation of the dynamic variables. The statistics relies on
1
roughly the measurements within the last h = 1−λ frames/time instances. That
allows the algorithm to adapt the changes in the noise statistics in time. Such an
approach is appropriate when the unknown parameters are slowly varying, and
the underlying parameter evolution is unknown.
In the proposed method, each particle i keeps its own estimate for the parameters
θ (i) of the unknown process noise. In the importance sampling step, the particles
use their own posterior distribution of the unknown parameters. The weight
update of the particles is made according to the measurement likelihood. The
particles are keeping the unknown parameters, and those which best explain the
observed measurement sequence will survive in time.
A model where the state vector is augmented with the parameters is described
in Section 4.1, followed by a model where the parameters appear in the measure-
ment noise, instead of in the process noise, in Section 4.2. The augmented state
space model in Section 4.1 can be implemented using both a pf and a Kalman fil-
ter, i.e., summing up to in total four different filters implementations to compare.
The characteristics of the four different methods are summarized in Section 4.3.
Finally, Section 4.4 discusses the velocity measurements, which are used as inputs
in the system.
One common approach in joint state and parameter estimation is to augment the
state vector with the unknown parameters Liu and West (2001). In this case the
state vector is defined as
h iT
x = x y ψ µ3 µ4 Σ3 Σ4 . (25)
The motion model (7) contains the variables δ3 and δ4 and in order to express
the motion√model using the state variables the relation in (9c) is considered, i.e.,
δ3 = µ3 + Σ3 N (0, 1) and vice versa for δ4 . The state space model can again be
written in the general form (1) with the components according to
ω µ +ω µ
xk + T vvirt
+ 3 3,k 2 4 4,k cos ψk
k
y + T vvirt + ω3 µ3,k +ω4 µ4,k sin ψ
k k 2 k
ψ + T ψ̇ virt − ω3 µ3,k −ω4 µ4,k
k k lt
f (xk , uk ) = (26a)
µ
3,k
µ 4,k
0
0
4 Models for Comparison 293
ω √Σ √
T 3 3,k cos ψ T ω4 Σ4,k cos ψ
√2 k √2 k 0 0
ω3 Σ3,k ω4 Σ4,k
2 √ sin ψk 2 √ sin ψk 0 0
T T
g(xk , uk ) = (26b)
−ω3 Σ3,k ω4 Σ4,k
T T 0 0
lt lt
0 0 I2 0
0 0 0 I2
h T T T
iT
wk = wn wµ,k wΣ,k (26c)
where wn = N (0, I2 ). The process noises wµ,k is zero mean Gaussian noise. i.e.,
wµ = N (0, Q). (26d)
In order to preserve the positive definite property, the following Markovian model
with Inverse-Gamma distribution is used to propagate the unknown variances
p(Σ3,k |Σ3,k−1 ) = iΓ (α3,k , β3,k ) (27a)
p(Σ4,k |Σ4,k−1 ) = iΓ (α4,k , β4,k ). (27b)
The parameters α and β are chosen such that the mean value is preserved and the
standard deviation is equal to 5 percent of the previous value of the parameter.
E{Σ3,k |Σ3,k−1 } = Σ3,k−1 (28a)
E{Σ4,k |Σ4,k−1 } = Σ4,k−1 (28b)
Std{Σ3,k |Σ3,k−1 } = 0.05Σ3,k−1 (28c)
Std{Σ4,k |Σ4,k−1 } = 0.05Σ4,k−1 . (28d)
Finally, the components of the measurement model (1b) are
h iT
yk = xGPS
k yGPS
k (29a)
" #
1 0 0 0 0
h(xk , uk ) = h(xk ) = x (29b)
0 1 0 0 0 k
d(xk , uk ) = d = I2 (29c)
and the measurement noise is zero mean and the covariance is assumed to be
constant, i.e.,
h iT
ek = ex ey = N (0, R), R = ΣGPS I2 . (29d)
The input signals are the same as defined in (8). Since the unknown parameters
are included in the state vector, there is no need to marginalize the noise param-
eters. Standard particle filter is used to estimate the state. This method will be
referred to as augmented particle filter (aug-pf). The filtering problem can also
be solved with nonlinear Kalman filter (kf) based algorithms such as extended
kf (ekf) or unscented kf (ukf), and this method will be referred to as augmented
Kalman filter (aug-kf).
294 Paper G Tire Radii and Vehicle Trajectory Estimation Using a Marginalized PF
xk + T vk cos ψk
y + T v sin ψ
k k k
f (xk , uk ) = f (xk ) = ψk + T ψ̇k (31a)
ψ̇
k
vk
0 0
0 0
g(xk , uk ) = g(xk ) = 0 0 (31b)
T 0
0 T
with the zero mean measurement noise w with constant covariance
" #
w
wk = ψ̇ = N (0, Q), Q = diag(σδ23 , σδ24 ). (31c)
wv
The measurement model is now nonlinear and the components in (1b) are
h iT
yk = xgps ygps ψ̇kvirt vvirt k (32a)
h iT
h(xk , uk ) = h(xk ) = x y ψ̇ v (32b)
1 0 0
1 0 0
g(xk , uk ) = g(uk ) = ω3 ω4 (32c)
0 − lt
lt
0 ω23 ω4
2
where the noise is
h iT
ek = ex ey δ3,k δ4,k = N (µk , Σk ) (32d)
h iT
µk = 0 0 µ3,k µ4,k (32e)
Σk = diag([Σx,k , Σy,k , Σ3,k , Σ4,k ]) (32f)
The algorithm described in Section 3 applies to solve the estimation problem.
In this model the process noise parameters are known but the measurement noise
parameters are to be estimated. The same approach described in Section 3 also
4 Models for Comparison 295
applies to this model. At the sampling stage, the state prediction distribution
can be used as the importance distribution. Then the weight update equation
simplifies to,
(i) (i)
wk = wk−1 p(yk |x0:k , y1:k−1 ), (33)
likewise the equation (22). The likelihood computation can be done by marginal-
izing the unknown noise parameters, as it is done for the process noise in equa-
tion (15)
Z
p(yk |x0:k , y1:k−1 ) = p(yk |xk , θ)p(θ|x0:k−1 , y1:k−1 )dθ. (34)
angular speed ω(kT ) at time kT , where T is the sampling time and k is the time
step number, can now be approximated as
2π(`k − `k−1 )
ω̂(kT ) = . (36)
Ncog (τ`k − τ`k−1 )
Here, τ`k denotes the time when the last cog `k passed before time τ = kT . Note
that the angle can be recovered by summing ω̂(kT ) over time.
In the motion model (7) the angular speed ω is multiplied with the sample time T ,
which gives an angle. However, since the sensor initially measures the number
of cogs passed in a certain time according to equation (36) there is no need to
transform it into an angular velocity. It is more efficiently to instead use
2π(`k − `k−1 )
T ωk = , (37)
Ncog T
where `k − `k−1 is the number of cogs passed in the sampling time T . More details
about sampling and quantization effects in wheel speed sensors are described in
Gustafsson (2010b).
5 Results
In the experiments, the measurements were collected with a passenger car equipped
with standard vehicle sensors, such as wheel speed sensors, and a gps receiver,
see Figure 2. The vehicle is further equipped with an additional and more accu-
rate imu, besides the standard imu already mounted in the car, and an optical
velocity sensor. These two additional sensors were used to calibrate the setup,
but were not further used to produce the results presented.
In regions where the car moves at low velocities, the steering wheel angle mea-
surement was utilized as follows, in order to avoid quantization problems of the
wheel cogs
ω3 δ3 ω4 δ4
xk+1 = xk + T (vvirt
k + + ) cos ψk (38a)
2 2
ω3 δ3 ω4 δ4
yk+1 = yk + T (vvirt
k + + ) sin ψk (38b)
2 2
virt ω4 δ4 ω3 δ3
ψk + T (ψ̇k + lt − lt ) if v > γ
ψk+1 = virt ω 3 δ3 ω 4 δ 4
(38c)
ψk + T δF (v +
+ )/lb if v < γ
k 2 2
The gps measurements of the 12 km test round is shown as a red solid line in
Figure 3. It is overlayed by the estimated trajectory, which is black-white dashed.
The photo is a very accurate flight photo (obtained from the Swedish mapping,
cadastral and land registration authority), which can be used as ground truth to
visualize the quality of the trajectory estimate. The round took about 18 min
to drive and it starts and ends in urban area of Linköping, in the upper right
corner in Figure 3. The test vehicle is driving clockwise, first on a small rural
5 Results 297
road, and then on the left side of the figure entering a straight national highway,
before driving back to urban area on the top of the figure. The test was performed
two times, first with balanced tire pressure and thereafter with unbalanced tire
pressure, where the pressure of the rear left tire was released to be approximately
50% of the right tire pressure.
For the first round the pressure of the rear wheel tires was adjusted to be equal
2.8 bar on both tires. The estimated parameters, i.e., the mean and the covariance
for the left and the right wheel are shown in the Figure 4a and 4b, respectively.
It is clearly visible that the radius error is similar for the left and the right wheel
and and all the methods perform well in estimating the mean values µ3 and µ4
except the mpf-mn method, which makes a jump around time t = 540. The
performances of the methods differ in estimating the radius error difference be-
tween the left and right wheels which is shown in Figure 5. The proposed method,
mpf-pn, performs the best among the four estimators. The aug-pf, and mpf-mn
methods produce more erratic estimates than the mpf-pn and the aug-kf. The
peak value of the estimation error of mpf-pn is smaller than that of aug-kf.
For the second round the pressure of the rear left tire was released to 1.5 bar.
Comparing Figure 6a with Figure 6b it is visible that the pressure reduction leads
to a smaller µ3 than µ4 value. The behavior of the algorithms are similar to the
balanced case. The difference among the methods can be observed better in Fig-
ure 7, where the difference between the left and the right tire radii errors µ3 − µ4
is shown. Here again, The aug-pf, and mpf-mn methods produce more erratic
estimates. The mpf-pn and the aug-pf produces smoother estimates and the
mpf-pn results are better than aug-kf. All four methods reach a value of a rela-
298 Paper G Tire Radii and Vehicle Trajectory Estimation Using a Marginalized PF
500
1000
y [m]
1500
2000
2500
Figure 3: The red line is gps position measurements and the black-white
dashed line is the estimated driven trajectory. The experiment starts and
ends at a roundabout in the upper right corner. (©Lantmäteriet Medgivande
I2011/1405, reprinted with permission)
5 Results 299
0.02 0.02
MPF−PN MPF−PN
0.01 AUG−PF 0.01 AUG−PF
AUG−KF AUG−KF
0 MPF−MN 0 MPF−MN
µ3 [m]
µ4 [m]
−0.01 −0.01
−0.02 −0.02
−0.03 −0.03
−0.04 −0.04
100 200 300 400 500 600 700 800 900 1000 1100 100 200 300 400 500 600 700 800 900 1000 1100
5 5
10 10
0
10
0
10
−5
Σ3
Σ4
10
−5
10
−10
10
−15 −10
10 10
100 200 300 400 500 600 700 800 900 1000 1100 100 200 300 400 500 600 700 800 900 1000 1100
time [s] time [s]
Figure 4: Tire radius error of the left and right rear wheels, in Figure (a) and
(b), respectively. The upper plot in each sub figure shows the mean values µ
and the lower plot the covariance estimates Σ. These plots show the situation
with balanced wheel pressure, and the radius error in Figure (a) and (b) is
very similar. The black solid line is the mpf-pn estimate, the gray solid line
is the aug-pf estimate, the black dashed line is the aug-kf estimate and the
gray dashed line is from the mpf-pn.
In order to analyze the methods numerically an artificial data set, which simu-
lates a pressure drop, has been created. The data set with balanced wheels is used
as a basis for that purpose, and an artificial wheel speed is computed according
to
r
ω̄4 = ω4 (39)
r + δ̄4
where the artificial tire radius error is given by
kδ
− Kmax k < K2
δ̄4 = 2 . (40)
δmax
k ≥ K2
The virtual measurements (4) are recalculated based on the artificial wheel speed
as follows.
ω r + ω̄4 r
v̄virt = 3 (41a)
2
ω̄ r − ω3 r
ψ̇¯ virt = 4 . (41b)
lt
For the example presented here, the values δmax = −2.5 · 10−3 m and K2 = 5808
where chosen. The simulated tire radii difference versus time, and its estimates
are plotted in Figure 8. Here again the mpf-pn produces the minimum minimum
root mean square error (rmse) among all methods. Further, we compare the
300 Paper G Tire Radii and Vehicle Trajectory Estimation Using a Marginalized PF
−3
x 10
1.5
MPF−PN
1 MPF−MN
0.5
µ3−µ4 [m] 0
−0.5
−1
−1.5
100 200 300 400 500 600 700 800 900 1000 1100
time [s]
−3
x 10
1.5
AUG−PF
1 AUG−KF
0.5
µ3−µ4 [m]
−0.5
−1
−1.5
100 200 300 400 500 600 700 800 900 1000 1100
time [s]
Figure 5: The figure shows the tire radius error difference between the left
and the right rear wheels, for the situation with balanced wheel pressures.
Since the pressure is equal in the left and the right wheel the radius differ-
ence between them is zero as expected.
average rmse of the algorithms over 100 Monte Carlo (mc) runs and present the
change in the rmse errors while varying the number of particles.
Next results are based on 100 mc runs for all methods (except for aug-kf, which
is deterministic). The effects of changing the number of particles is examined in
Figure 9a. The mc runs are repeated for 100, 500, 1000, and 5000 particles and
the average rmse of the difference between µ3 and µ4 is compared. This is per-
formed under the assumption that µ3 − µ4 is equal to the artificially added error,
according to (40), which serves as the true value. In Figure 9a the average rmse
are plotted with respect to the different number of particles. The proposed mpf-
pn estimate has the smallest rmse, and for instance the rmse for 100 particles
corresponds to the same rmse of the aug-pf using 500 particles. The aug-kf
approach produces here the worst rmse.
Some of the methods are sensitive to divergence when the number of particles
becomes to small. For this reason the divergence rate is analyzed for the three pf
based methods and plotted with respect to the number of particles in Figure 9b.
The algorithms are run on the complete 18 min data set and if the simulation
diverges during one mc run it is counted and compared to the total number of
100 mc runs. In the figure it is shown that the proposed mpf-pn approach and
the aug-kf approach always converges, whereas the aug-pf and the mpf-mn
approaches converges for all 100 mc runs when using at least 1000 particles.
Finally the average runtime per sample of a single mc run are given in Table 2.
Here it is obvious that the proposed process mpf-pn method and the aug-pf
6 Conclusion 301
0.02 0.02
MPF−PN MPF−PN
0.01 AUG−PF 0.01 AUG−PF
AUG−KF AUG−KF
0 MPF−MN 0 MPF−MN
µ3 [m]
µ [m]
−0.01 −0.01
4
−0.02 −0.02
−0.03 −0.03
−0.04 −0.04
100 200 300 400 500 600 700 800 900 1000 100 200 300 400 500 600 700 800 900 1000
5 5
10 10
0
10
0
10
−5
Σ3
Σ4
10
−5
10
−10
10
−15 −10
10 10
100 200 300 400 500 600 700 800 900 1000 100 200 300 400 500 600 700 800 900 1000
time [s] time [s]
Figure 6: Tire radius error of the left and right rear wheels, in Figure (a) and
(b), respectively. The upper plot in each sub figure shows the mean values µ
and the lower plot the covariance estimates Σ. These plots show the situation
with unbalanced wheel pressure, and as expected the radius error of the left
wheel in Figure (a) is larger than the error of the right wheel in (b). The black
solid line is the mpf-pn estimate, the gray solid line is the aug-pf estimate,
the black dashed line the aug-kf estimate and the gray dashed line the mpf-
pn estimate.
Number of particles
Method 100 500 1000 5000
mpf-pn 0.39 0.70 1.1 5.9
aug-pf 0.41 0.77 1.2 7.4
aug-kf – – 0.35 – –
mpf-mn 6.2 29 56 290
estimate are in the same order of complexity, since the computation times are
similar. The aug-kf approach is in the same order of magnitude as the aug-
pf with 100 particles, but as seen in Figure 9a, with a much worse rmse. The
mpf-mn is by far the slowest method.
6 Conclusion
In this study, we address the problem of joint estimation of unknown tire radii
and the trajectory of a four wheeled vehicle based on gps and wheel angular ve-
locity measurements. The problem is defined in a Bayesian framework and an
efficient method that utilizes marginalized particle filters is proposed in order to
accomplish the difficult task of joint parameter and state estimation. The algo-
302 Paper G Tire Radii and Vehicle Trajectory Estimation Using a Marginalized PF
−3
x 10
0
MPF−PN
−0.5 MPF−MN
−1
µ3−µ4 [m]
−1.5
−2
−2.5
−3
100 200 300 400 500 600 700 800 900 1000
time [s]
−3
x 10
0
AUG−PF
−0.5 AUG−KF
−1
µ3−µ4 [m]
−1.5
−2
−2.5
−3
100 200 300 400 500 600 700 800 900 1000
time [s]
Figure 7: The figure shows the tire radius error difference between the left
and the right rear wheels, for the situation with unbalanced wheel pressures.
The pressure of the left wheel is reduced by 50%, which leads to a radius
reduction of about 1.5 mm.
rithm is tested on real data experiments. The results show that it is possible to
estimate relative tire radius difference within sub-millimeter accuracy.
6 Conclusion 303
−3
x 10
0
MPF−PN
−0.5 MPF−MN
true
−1
−2
−2.5
−3
100 200 300 400 500 600 700 800 900 1000 1100
time [s]
−3
x 10
0
AUG−PF
−0.5 AUG−KF
true
−1
µ3−µ4 [m]
−1.5
−2
−2.5
−3
100 200 300 400 500 600 700 800 900 1000 1100
time [s]
Figure 8: The figure shows the tire radius error difference between the left
and the right rear wheels, for the situation with artificial wheel radii error of
−2.5 mm. The example is aimed at simulating a slow puncture. The resulting
estimates are close to the expected values.
−3
x 10
7 70
MPF−PN MPF−PN
AUG−PF AUG−PF
AUG−KF AUG−KF
6 MPF−MN 60 MPF−MN
5 50
Divergence rate [%]
4 40
RMSE
3 30
2 20
1 10
0 0
2 3 2 3
10 10 10 10
Number of particles Number of particles
Figure 9: Figure (a) shows the rmse over number of particles. Note that,
the proposed mpf-pn approach has the same rmse value for 100 particles
as the aug-pf has for 500 particles. Figure 9b shows the divergence rate
over number of particles. The proposed mpf-pn approach did not diverge
at any of the mc runs, however the aug-pf converges only if more that 1000
particles are used.
304 Paper G Tire Radii and Vehicle Trajectory Estimation Using a Marginalized PF
Bibliography
C. R. Carlson and J. C. Gerdes. Consistent nonlinear estimation of longitudinal
tire stiffness and effective radius. IEEE Transactions on Control Systems Tech-
nology, 13(6):1010–1020, November 2005.
A. Censi, L. Marchionni, and G. Oriolo. Simultaneous maximum-likelihood cali-
bration of odometry and sensor parameters. In Proceedings of the IEEE Inter-
national Conference on Robotics and Automation, pages 2098–2103, Pasadena,
Canada, May 2008.
V. E. Ersanilli, P. J. Reeve, K. J. Burnham, and P. J. King. A continuous-time
model-based tyre fault detection algorithm utilising a Kalman state estimator
approach. In Proceedings of the 7th Workshop on Advanced Control and Di-
agnosis, Zielona Góra, Poland, November 2009.
F. Gustafsson. Statistical Sensor Fusion. Studentlitteratur, Lund, Sweden, 2010a.
F. Gustafsson. Rotational speed sensors: Limitations, pre-processing and auto-
motive applications. IEEE Instrumentation & Measurement Magazine, 13(2):
16–23, March 2010b.
F. Gustafsson, S. Ahlqvist, U. Forssell, and Ni. Persson. Sensor fusion for accu-
rate computation of yaw rate and absolute velocity. In Proceedings of the SAE
World Congress, SAE paper 2001-01-1064, Detroit, MI, USA, April 2001.
S. Julier and H. Durrant-Whyte. Process models for the high-speed navigation of
road vehicles. In Proceedings of the IEEE International Conference on Robotics
and Automation, volume 1, pages 101–105, May 1995.
M. Kárný. Optimized Bayesian Dynamic Advising: Theory and Algorithms.
Springer, London, 2006. ISBN 978-1-84628-254-6.
J. Liu and M. West. Combined parameter and state estimation in simulation-
based filtering. In A. Doucet, N. De Freitas, and N. Gordon, editors, Sequential
Monte Carlo Methods in Practice. Springer, 2001.
C. Lundquist, E. Özkan, and F. Gustafsson. Tire radii estimation using a marginal-
ized particle filter. IEEE Transactions on Intelligent Transportation Systems,
2011. Submitted.
S. L. Miller, B. Youngberg, A. Millie, P. Schweizer, and J. C. Gerdes. Calculating
longitudinal wheel slip and tire parameters using gps velocity. In IEEE Amer-
ican Control Conference, volume 3, pages 1800–1805, June 2001.
N.K. M’sirdi, A. Rabhi, L. Fridman, J. Davila, and Y. Delanne. Second order slid-
ing mode observer for estimation of velocities, wheel sleep, radius and stiffness.
In IEEE American Control Conference, pages 3316–3321, June 2006.
E. Özkan, C. Lundquist, and F. Gustafsson. A Bayesian approach to jointly esti-
mate tire radii and vehicle trajectory. In Proceedings of the IEEE Conference
on Intelligent Transportation Systems, Washington DC, USA, October 2011.
Bibliography 305
307
308 Index