tracking - University of Washington
Download
Report
Transcript tracking - University of Washington
Electrical Engineering
Information Processing Lab
Object Tracking, Trajectory Analysis
and Event Detection in Intelligent
Video Systems
Student: Hsu-Yung Cheng
Advisor: Jenq-Neng Hwang, Professor
Department of Electrical Engineering
University of Washington
1
Electrical Engineering
Information Processing Lab
Outlines
Motivation
Object Tracking
Trajectory Analysis
Event Detection
Conclusions and Future Work
2
Electrical Engineering
Information Processing Lab
Motivation
Advantage of Video-based systems
Being able to capture a large variety of information
Relatively inexpensive
Easier to install, operate, and maintain
Applications
Security surveillance
Home care surveillance
Intelligent transportation systems
There is an urgent need for intelligent video systems
to replace human operators to monitor the areas under
surveillance.
3
Electrical Engineering
Information Processing Lab
System Modules for Intelligent Event
Detection Systems
4
Electrical Engineering
Information Processing Lab
Challenges for Robust Tracking
Segmentation errors
Change of lighting conditions
Shadows
Occlusion
5
Electrical Engineering
Information Processing Lab
Inter-Object Occlusion
6
Electrical Engineering
Information Processing Lab
Initial Occlusion
7
Electrical Engineering
Information Processing Lab
Background Occlusion
8
Electrical Engineering
Information Processing Lab
Proposed Tracking Mechanism
Image
Frames
Background
Estimation
and Updating
Current
Frame
Background
Image
Moving
Object
Segmentation
Tracking Result
for Previous Frame
Tracking
List
Construction
Measurement
Candidate List
Prediction
Constructing
measurement
candidate List
for Each Target
Data
Association
and Update
Tracking Result
for Current Frame
9
Electrical Engineering
Information Processing Lab
Background Estimation and Updating
Based on Gaussian mixture models [Stauffer 1999]
Model the recent history of each pixel by a mixture of K
Gaussian distributions.
Every pixel value is checked among the existing K Gaussian
distributions for a match.
Update the weights for the K distributions and the parameters
of the matched distribution
The kth Gaussian is ranked by wk / k ( k k 2 I )
The top-ranked Gaussians are selected as the background models.
Pixel values that belong to background models are accumulated
and averaged as the background image.
The background image is updated for every certain interval of
time.
10
Electrical Engineering
Information Processing Lab
Moving Object Segmentation
Based on background subtraction
Fourth order moment
[S. Colonnese et al. Proc. of SPIE 2003]
d
( 4)
1
( x, y )
N
4
ˆ
(
diff
_
img
(
s
,
t
)
m
)
d
( s , t ) ( x , y )
Thresholding
1, if d ( 4 ) ( x, y )
S ( x, y )
( 4)
0
,
if
( x, y )
d
11
Electrical Engineering
Information Processing Lab
Kalman Filter
Kalman filters are modeled on a Markov chain
built on linear operators perturbed by Gaussian
noises.
At time k, each target has state
xk
xk Fk xk 1 wk , where wk ~ (0, Qk )
and observation (measurement)
yk H k xk vk
yk
, where vk ~ (0, Rk )
Kalman, R. E. "A New Approach to Linear Filtering and Prediction Problems,“
Transactions of the ASME - Journal of Basic Engineering Vol. 82: pp. 35-45, 1960.
12
Electrical Engineering
Information Processing Lab
Kalman Filter Phases
Predict
Updated
State
Estimate
Predicted State xˆk k 1
xˆk |k
Observed
yk
Measurements
xk yk [uk vk uk vk ]T
Update
1
0
Fk
0
0
0
1
0
0
1
0
1
0
0
1
0
1
1
0
Hk
0
0
0
1
0
0
0
0
1
0
0
0
0
1
13
Electrical Engineering
Information Processing Lab
Kalman Filter Phases
Predict Phase
Update Phase
• Updated State Estimate
• Predicted State
xˆk k 1 Fk xˆk 1 k 1
xˆk |k xˆk |k 1 K k ~
yk
• Updated Estimate Covariance
Pk |k ( I K k H k ) Pk |k 1
• Predicted Estimate
Covariance
• Kalman Gain
K k Pk |k 1H k Sk
T
1
Pk k 1 Fk Pk 1 k 1Fk Qk • Innovation Covariance
T
Sk H k Pk |k 1H k Rk
T
• Innovation (Measurement) Residual
~
yk yk H k xˆk |k 1
14
Electrical Engineering
Information Processing Lab
Constructing Measurement
Candidate List
15
Electrical Engineering
Information Processing Lab
Searching for measurement
candidate representation points
• Search for q1 and q2 in the two n x n
windows centered around p1 and p2,
respectively.
q1 arg max Area(O(q) Sc )
q1 ( x , y )
q2 arg max Area(O(q) Sc )
q2 ( x , y )
• Compute the dissimilarities
between the target object and
the potential measurement
candidates.
16
Electrical Engineering
Information Processing Lab
Data Association
To associate measurements with targets when
performing updates
Nearest Neighbor Data Association
For all the measurement in the validation gate of a
target, select the nearest measurement.
1
[ yk H k xk ]T S k [ yk H k xk ] 2
Probabilistic Data Association (PDA)
Joint Probabilistic Data Association (JPDA)
17
Electrical Engineering
Information Processing Lab
Probabilistic Data Association
j P{X j | Y k }
2
y2
Consider a single target independently
of others
j
denotes the event that the j th
measurement belongs to that target.
1
x
y1
y3
3
Combined (Weighted) Innovation
m
m
j 1
j 1
~
yk j ~
ykj j ( ykj H k xˆk|k 1 )
Y . Bar-Shalom and E. Tse, “Tracking in a cluttered environment
with probabilistic data association,” Automatica, vol. 11, pp. 451-460, Sept. 1975.
18
Electrical Engineering
Information Processing Lab
Modified PDA for
Video Object Tracking
• To handle video objects (regions), incorporate the
following factor when computing j
Similarity j
(1 )
m
Similarity
i
i 1
OverlapArea j
m
OverlapArea
i 1
i
0 1
• Similarity measure: cross correlation function
CR
( A
mn
m
A )( Bmn B )
n
( ( Amn A ) 2 )( ( Bmn B ) 2 )
m
n
m
n
19
Electrical Engineering
Information Processing Lab
Experimental Videos
20
Electrical Engineering
Information Processing Lab
Vehicle Tracking Results 1
21
Electrical Engineering
Information Processing Lab
Vehicle Tracking Results 2
22
Electrical Engineering
Information Processing Lab
Human Tracking Results
23
Electrical Engineering
Information Processing Lab
Object Tracking Statistics
Video
Sequence 1
Sequence 2
Sequence 3
Sequence 4
Ground Truth
71
64
92
130
Object Detected
72
61
93
128
Miss
0
3
0
5
False Alarm
1
0
1
3
Correctly Detected
71
61
92
125
Correctly Tracked
70
58
92
120
Detection Precision
0.986
1.000
0.989
0.977
Detection Recall
1.000
0.953
1.000
0.962
Tracking Success Rate
0.986
0.951
1.000
0.960
Detection Precision
Correctly Detected
Object Detected
Tracking Success Rate
Detection Recall
Correctly Detected
Ground Truth
Correctly Tracked
Correctly Detected
Occluded Object Tracking Success Rate: 0.855
24
Electrical Engineering
Information Processing Lab
Trajectory Analysis
Class 1
Class 2
Class 3
Class 5
Class 4
Class 6
25
Electrical Engineering
Information Processing Lab
Trajectory Smoothing
• Sample
the
trajectory
• Perform cubic
spline interpolation
26
Electrical Engineering
Information Processing Lab
Angle Feature Extraction
Relative Angle
Absolute Angle
v1 ( ~
xt ~
xt k , ~
yt ~
yt k )
v2 ( ~
xt k ~
xt , ~
yt k ~
yt )
v
v
p cos 1 1 2
v1 v2
vh v2
h cos
vh v2
1
27
Electrical Engineering
Information Processing Lab
Hidden Markov Model
N
states Si , i=1,…, N
Transition probability aij
Initial probability pi
Observation symbol probability bj(k)
A complete model l=(A,B,P)
A={aij}
B={bjk}
P={pi}
Sunny
P(walk) = 0.5
P(bike) = 0.4
P(bus) = 0.1
Cloudy
P(walk) = 0.4
P(bike) = 0.3
P(bus) = 0.3
Rainy
P(walk) = 0.2
P(bike) = 0.1
P(bus) = 0.7
28
Electrical Engineering
Information Processing Lab
Example of HMM
Observation sequence O = { walk, bike, bus, bus, bike, walk, … }
29
Electrical Engineering
Information Processing Lab
Three Problems in HMM
Given l, compute the probability that O is
generated by this model
How likely did O happen at this place?
Given l, find the most likely sequence of hidden
states that could have generated O
How did the weather change day-by-day?
forward-backward algorithm
Viterbi algorithm
Given a set of O, learn the most likely l
Train the parameters of the HMM
Baum-Welch algorithm
30
Electrical Engineering
Information Processing Lab
Left-to-right HMM for
Trajectory Classification
31
Electrical Engineering
Information Processing Lab
K-means Clustering of
Feature Points
32
Electrical Engineering
Information Processing Lab
Number of Training
and Test sequences
Video for both training and testing
Video for testing only
Trajectory
Class
Training
Trajectories
Testing
Objects
Testing
Trajectories
Class 1
12
64
307
Class 2
11
18
66
Class 3
13
27
27
Class 4
5
20
20
Class 5
8
26
32
Class 6
8
29
45
33
Electrical Engineering
Information Processing Lab
Trajectory Classification Statistics
C1
C2
C3
C4
C5
C6
Accuracy
Class 1
307
0
0
0
0
0
100%
Class 2
0
64
0
0
0
2
97.4%
Class 3
2
0
25
0
0
0
92.6%
Class 4
0
0
0
20
0
0
100%
Class 5
1
0
0
0
31
0
96.8%
Class 6
0
2
0
0
0
43
95.5%
34
Electrical Engineering
Information Processing Lab
Anomalous Trajectories
35
Electrical Engineering
Information Processing Lab
Event Detection
Type I Events
Type II Events
Based on trajectory classification results via HMM using angle features
Illegal U-turns or left turns
Anomalous trajectories
Simple rule-based decision logic
Entering a dangerous region
Stopping in the scene
Driving on the road shoulder
Type III Events
Based on trajectory classification results via HMM using speed features
Speed change
36
Electrical Engineering
Information Processing Lab
Conclusions and Future Works
Tracking
Kalman filtering for prediction
Modified PDA for data association
Basic Events
Simple rule-based decision logic
HMM
Higher Level Events
Combining basic events
More flexible models
Trajectories
Intermediate
Events
Basic Events
Angle Features,
Speeds,
Positions,
Other Features
HMMs
High
Level
Events
Type II,
Type III
Events
HMMs
DBNs
Rule-based
Detection Logic
Type I
Events
37
Electrical Engineering
Information Processing Lab
38