+ All Categories
Home > Documents > Robotics 2 Target Tracking -...

Robotics 2 Target Tracking -...

Date post: 02-Aug-2018
Category:
Upload: dangkhanh
View: 217 times
Download: 0 times
Share this document with a friend
118
Robotics 2 Target Tracking Giorgio Grisetti, Cyrill Stachniss, Kai Arras, Wolfram Burgard
Transcript
Page 1: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Robotics 2 Target Tracking

Giorgio Grisetti, Cyrill Stachniss, Kai Arras, Wolfram Burgard

Page 2: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Linear Dynamical System (LDS)

  Stochastic process governed by

  is the state vector   is the input vector   is the process noise   is the system matrix   is the input gain

  The system can be observed through

  is the measurement vector   is the measurement noise   is the measurement matrix

Page 3: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Discrete Time LDS

  Continuous model are difficult to realize   Algorithms work at discrete time steps   Measurements are acquired with certain rates

  In practice, discrete models are employed

  Discrete-time LDS are governed by

  is the state transition matrix   is the discrete-time input gain

  Same observation function of continuous models

Page 4: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Discrete Time LDS

  Continuous model are difficult to realize   Algorithms work at discrete time steps   Measurements are acquired with certain rates

  In practice, discrete models are employed

  Discrete-time LDS are governed by

  is the state transition matrix   is the discrete-time input gain

  Same observation function of continuous models

In target tracking, the input is unknown!

Page 5: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

  We want to throw a ball and compute its trajectory

  This can be easily done with an LDS

  The ball‘s state shall be represented as

  We ignore winds but consider the gravity force g

  No floor constraints

  We observe the ball with a noise-free position sensor

Page 6: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

  Throwing a ball from s with initial velocity v

  Consider only the gravity force, g, of the ball

  State vector

  Initial state

  Input vector (scalar)

  Measurement vector

  Process matrices

  Measurement matrix

y

s

v

x o

Page 7: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

  Initial State

  No noise

Page 8: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 9: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 10: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 11: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 12: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 13: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 14: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 15: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 16: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 17: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 18: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 19: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 20: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

  Initial State

  It’s windy and our sensor is imperfect: let’s add Gaussian process and observation noise

Page 21: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 22: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 23: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 24: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 25: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 26: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 27: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 28: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 29: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 30: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 31: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 32: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

LDS Example – Throwing ball

System evolution Observations

Page 33: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Target Tracking

  Detection is… Knowing the presence of an object

  Tracking is… Maintaining a state of an object over time

Tracking maintains the object‘s state and identity despite detection errors (false negatives, false alarms), occlusions, and in the presence of other objects

“Tracking is the estimation of the state of a moving object based on remote measurements.” [Bar-Shalom]

Page 34: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Target Tracking

Problem Statement

  Given   (Linear/nonlinear) dynamical system model   External measurements (from some sort of sensor)

  Wanted   System state estimate

(e.g. position, velocity, acceleration, …)

  Problems   Track maintenance (i.e. creation, occlusion, deletion)   Multiple targets   Data association

Page 35: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Target Tracking

  Long History, Many Applications

Air Traffic Control

Surveillance

People Tracking, HRI

Military Applications

Fleet Management

Motion Capture

Page 36: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Tracking cycle

Page 37: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Tracking cycle – Kalman filter

raw sensory data

targets

innovation from matched landmarks

predicted measurements in

sensor coordinates

predicted state

posterior state motion

model

observation model

Page 38: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Kalman Filter (KF)

  Consider a discrete time LDS with dynamic equation

where is a process noise

  The measurement equation is

where is a measurement noise

  The initial state is generally unknown and modeled as a Gaussian random variable

State estimate

Covariance estimate

Page 39: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

KF Cycle: State prediction

  State prediction

  In target tracking, no a priori knowledge of the dynamic equation is generally available

  Instead, different target motion models are used   Brownian motion model   Constant velocity model   Constant acceleration model   More advanced models (problem related)

Page 40: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Motion Models: Brownian

  No motion assumption   Useful to describe stop-and-go motion behavior

  State representation

  Initial state

  Transition matrix

Ball example

Page 41: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

  No motion assumption   Useful to describe stop-and-go motion behavior

  State representation

  Initial state

  Transition matrix

Motion Models: Brownian

State prediction:   Uncertainty grows

Ball example

Page 42: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

  No motion assumption   Useful to describe stop-and-go motion behavior

  State representation

  Initial state

  Transition matrix

Motion Models: Brownian

Ball example

State prediction:   Uncertainty grows

Page 43: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Motion Models: Brownian

  No motion assumption   Useful to describe stop-and-go motion behavior

  State representation

  Initial state

  Transition matrix

Ball example

State prediction:   Uncertainty grows

Page 44: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Motion Models: Brownian

  No motion assumption   Useful to describe stop-and-go motion behavior

  State representation

  Initial state

  Transition matrix

Ball example

State prediction:   Uncertainty grows

Page 45: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

MMs: Constant Velocity

  Constant target velocity assumption   Useful to model smooth target motion

  State representation

  Initial state

  Transition matrix

Ball example

Page 46: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

MMs: Constant Velocity

  Constant target velocity assumption   Useful to model smooth target motion

  State representation

  Initial state

  Transition matrix

Ball example

State prediction:   Linear target motion   Uncertainty grows

Page 47: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

MMs: Constant Velocity

  Constant target velocity assumption   Useful to model smooth target motion

  State representation

  Initial state

  Transition matrix

Ball example

State prediction:   Linear target motion   Uncertainty grows

Page 48: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

MMs: Constant Velocity

  Constant target velocity assumption   Useful to model smooth target motion

  State representation

  Initial state

  Transition matrix

Ball example

State prediction:   Linear target motion   Uncertainty grows

Page 49: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

MMs: Constant Velocity

  Constant target velocity assumption   Useful to model smooth target motion

  State representation

  Initial state

  Transition matrix

Ball example

State prediction:   Linear target motion   Uncertainty grows

Page 50: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

MMs: Constant Acceleration

  Constant target acceleration assumed   Useful to model target motion that is smooth in position

and velocity changes

  State representation

  Initial state

  Transition matrix

Ball example

Page 51: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

MMs: Constant Acceleration

  Constant target acceleration assumed   Useful to model target motion that is smooth in position

and velocity changes

  State representation

  Initial state

  Transition matrix

Ball example

State prediction:   Non-linear motion   Uncertainty grows

Page 52: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

MMs: Constant Acceleration

  Constant target acceleration assumed   Useful to model target motion that is smooth in position

and velocity changes

  State representation

  Initial state

  Transition matrix

Ball example

State prediction:   Non-linear motion   Uncertainty grows

Page 53: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

MMs: Constant Acceleration

  Constant target acceleration assumed   Useful to model target motion that is smooth in position

and velocity changes

  State representation

  Initial state

  Transition matrix

Ball example

State prediction:   Non-linear motion   Uncertainty grows

Page 54: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

MMs: Constant Acceleration

  Constant target acceleration assumed   Useful to model target motion that is smooth in position

and velocity changes

  State representation

  Initial state

  Transition matrix

Ball example

State prediction:   Non-linear motion   Uncertainty grows

Page 55: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

MMs: Constant Acceleration

  Constant target acceleration assumed   Useful to model target motion that is smooth in position

and velocity changes

  State representation

  Initial state

  Transition matrix

Ball example

Page 56: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

MMs: Constant Acceleration

  Constant target acceleration assumed   Useful to model target motion that is smooth in position

and velocity changes

  State representation

  Initial state

  Transition matrix

Ball example

State prediction:   Non-linear motion   Uncertainty grows

Page 57: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

MMs: Constant Acceleration

  Constant target acceleration assumed   Useful to model target motion that is smooth in position

and velocity changes

  State representation

  Initial state

  Transition matrix

Ball example

State prediction:   Non-linear motion   Uncertainty grows

Page 58: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

MMs: Constant Acceleration

  Constant target acceleration assumed   Useful to model target motion that is smooth in position

and velocity changes

  State representation

  Initial state

  Transition matrix

Ball example

State prediction:   Non-linear motion   Uncertainty grows

Page 59: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

MMs: Constant Acceleration

  Constant target acceleration assumed   Useful to model target motion that is smooth in position

and velocity changes

  State representation

  Initial state

  Transition matrix

Ball example

State prediction:   Non-linear motion   Uncertainty grows

Page 60: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

KF Cycle: Measurement Predict.

  Measurement prediction

  Observation Typically, only the target position is observed. The measurement matrix is then

Note: One can also observe (not in this course)   Velocity (Doppler radar)   Acceleration (accelerometers)

Page 61: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

KF Cycle: Data Association

  Once measurements are predicted and observed, we have to associate them with each other

  This is basically resolving the origin uncertainty of observations

  Data association is typically done in the sensor reference frame

  Data association can be a hard problem and many advanced techniques exist

More on this later in this course

Page 62: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

KF Cycle: Data Association

  The difference between predicted measurement and observation is called innovation

  The associated covariance estimate is called the innovation covariance

  The prediction-observation pair is often called pairing

Step 1: Compute the pairing difference and its associated uncertainty

Page 63: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

KF Cycle: Data Association

  Compute the Mahalanobis distance

  Compare it against the proper threshold from an cumulative (“chi square”) distribution

Compatibility on level α is finally given if this is true

Step 2: Check if the pairing is statistically compatible

Degrees of freedom

Significance level

Page 64: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

KF Cycle: Data Association

  Constant velocity model   Process noise

  Measurement noise

  No false alarm

 No problem

Page 65: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

KF Cycle: Data Association

  Constant velocity model   Process noise

  Measurement noise

  Uniform false alarm

  False alarm rate = 3

 Ambiguity: several observations in the validation gate

Page 66: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

KF Cycle: Data Association

  Constant velocity model   Process noise

  Measurement noise

  Uniform false alarm

  False alarm rate = 3

 Wrong association as closest observation is false alarm

Page 67: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

KF Cycle: Update

  Computation of the Kalman gain

  State and state covariance update

Page 68: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Track management: Naïve

Creation   When to create a new track?   What is the initial state?

Two heuristics   Greedy initialization

  Every observation not associated is a new track

  Initialize only position

  Lazy initialization   Accumulate several

unassociated observations   Initialize position & velocity

Occlusion/deletion   When to delete a track?   Is it just occluded?

Two heuristics   Greedy deletion

  Delete if no observation can be associated

  No occlusion handling

  Lazy deletion   Delete if no observation can

be associated for several time

  Implicit occlusion handling

Page 69: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Example: Tracking the Ball

  Unlike the previous experiment in which we had a model of the ball’s trajectory and just observed it, we now want to track the ball

  Comparison: small versus large process noise Q and the effect of the three different motion models

  For simplicity, we perform no gaiting (i.e. no Mahalanobis test) but accept the pairing every time

Page 70: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Brownian

Ground truth Observations State estimate

Small process noise Large process noise

Page 71: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Brownian

Ground truth Observations State estimate

Page 72: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Brownian

Ground truth Observations State estimate

Page 73: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Brownian

Ground truth Observations State estimate

Page 74: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Brownian

Ground truth Observations State estimate

Page 75: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Brownian

Ground truth Observations State estimate

Page 76: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Brownian

Ground truth Observations State estimate

Page 77: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Brownian

Ground truth Observations State estimate

Page 78: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Brownian

Ground truth Observations State estimate

Page 79: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Brownian

Ground truth Observations State estimate

Page 80: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Brownian

Ground truth Observations State estimate

Page 81: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Brownian

Ground truth Observations State estimate

Page 82: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Brownian

Ground truth Observations State estimate

Page 83: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Brownian

Ground truth Observations State estimate

Page 84: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Brownian

Ground truth Observations State estimate

large difference!

Page 85: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Constant Velocity

Ground truth Observations State estimate

Small process noise Large process noise

Page 86: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Constant Velocity

Ground truth Observations State estimate

Page 87: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Constant Velocity

Ground truth Observations State estimate

Page 88: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Constant Velocity

Ground truth Observations State estimate

Page 89: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Constant Velocity

Ground truth Observations State estimate

Page 90: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Constant Velocity

Ground truth Observations State estimate

Page 91: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Constant Velocity

Ground truth Observations State estimate

Page 92: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Constant Velocity

Ground truth Observations State estimate

Page 93: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Constant Velocity

Ground truth Observations State estimate

Page 94: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Constant Velocity

Ground truth Observations State estimate

Page 95: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Constant Velocity

Ground truth Observations State estimate

Page 96: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Constant Velocity

Ground truth Observations State estimate

Page 97: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Constant Velocity

Ground truth Observations State estimate

Page 98: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Constant Velocity

Ground truth Observations State estimate

Page 99: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Constant Velocity

Ground truth Observations State estimate

smaller difference

Page 100: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Const. Acceleration

Small process noise Large process noise

Ground truth Observations State estimate

Page 101: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Const. Acceleration

Ground truth Observations State estimate

Page 102: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Const. Acceleration

Ground truth Observations State estimate

Page 103: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Const. Acceleration

Ground truth Observations State estimate

Page 104: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Const. Acceleration

Ground truth Observations State estimate

Page 105: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Const. Acceleration

Ground truth Observations State estimate

Page 106: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Const. Acceleration

Ground truth Observations State estimate

Page 107: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Const. Acceleration

Ground truth Observations State estimate

Page 108: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Const. Acceleration

Ground truth Observations State estimate

Page 109: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Const. Acceleration

Ground truth Observations State estimate

Page 110: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Const. Acceleration

Ground truth Observations State estimate

Page 111: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Const. Acceleration

Ground truth Observations State estimate

Page 112: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Const. Acceleration

Ground truth Observations State estimate

Page 113: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Const. Acceleration

Ground truth Observations State estimate

Page 114: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Const. Acceleration

Ground truth Observations State estimate

very small

difference!

Page 115: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Ball Tracking: Wrap Up

  The better the motion model, the better the tracker is able to follow the target

  A large process noise covariance can partly compensate a poor motion model

  But: large process noise covariances cause the validation gates to be large, which in turn, creates a high level of ambiguity for data association in case of multiple targets

  In other words: the tracker can’t tell which is which target anymore because they are all statistically compatible with the observations

Page 116: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Tracking cycle – Particle filter

raw sensory data

targets

importance weighting

predicted measurements in

sensor coordinates

sampling

resampling motion model

observation model

Page 117: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

KF Cycle: Measurement Predict.

  Measurement prediction

  Observation Typically, only the target position is observed. The measurement matrix is then

Note: One can also observe (not in this course)   Velocity (Doppler radar)   Acceleration (accelerometers)

Page 118: Robotics 2 Target Tracking - uni-freiburg.deais.informatik.uni-freiburg.de/.../robotics2/pdfs/rob2-12-tracking.pdf · Robotics 2 Target Tracking ... Multiple targets ... Surveillance

Some Shapes & Numbers

  Blue is RGB: 51, 102, 153   Red is RGB: 154, 0, 0

test


Recommended