Segmentation of Vehicles in Traffic Video Tun-Yu Chiang Wilson Lau
Download
Report
Transcript Segmentation of Vehicles in Traffic Video Tun-Yu Chiang Wilson Lau
Segmentation of Vehicles in
Traffic Video
Tun-Yu Chiang
Wilson Lau
Introduction
Motivation
In CA alone, >400 road monitoring cameras, plans to install more
Reduce video bit-rate by object coding
Collect traffic flow data and/or surveillance e.g. count vehicles
passing on highway, draw attention to abnormal driver behavior
Two different approaches to segmentation:
Motion Segmentation
Gaussian Mixture Model
Motion Segmentation
Segment regions with a coherent motion
Coherent motion: similar parameters in motion model
Steps:
i.
ii.
Estimate dense optic flow field
Iterate between motion parameter estimation and
region segmentation
Translational model use motion vectors directly as parameters
iii.
Segmentation by k-means clustering of motion
parameters
Optic Flow Estimation
Optic Flow (or spatio-temporal constraint) equation:
Ix · vx + I y · vy + I t = 0
where Ix , Iy , It are the spatial and temporal derivatives
Problems
i.
Under-constrained: add ‘smoothness constraint’ – assume flow
field constant over 5x5 neighbourhood window
weighted LS solution
ii.
‘Small’ flow assumption often not valid:
e.g. at 1 pixel/frame, object will take 10 secs (300 frames@30fps)
to move across width of 300 pixels
multi-scale approach
Multi-scale Optic Flow Estimation
Iteratively Gaussian filter and
sub-sample by 2 to get ‘pyramid’
of lower resolution images
Project and interpolate LS
solution from higher level which
then serve as initial estimates for
current level
Use estimates to ‘pre-warp’ one
frame to satisfy small motion
assumption
LS solution at each level refines
previous estimates
Problem: Error propagation
temporal smoothing essential at
higher levels
Level 2
1 pixel/frame
Level 1
2 pixels/frame
4 pixels/frame
Level 0 (original resolution)
Results:
Optic flow field estimation
Results:
Optical flow field estimation
Smoothing of motion vectors across motion (object) boundaries due to
Smoothness constraint added (5x5 window) to solve optic flow equation
Further exacerbated by multi-scale approach
Occlusions, other assumption violations (e.g. constant intensity)
‘noisy’ motion estimates
Segmentation
Extract regions of interest by thresholding magnitude of motion vectors
For each connected region, perform k-means clustering using feature
vector:
[vx, vy, x, y, R, G, B]
motion
vectors
pixel
coordinates
color
intensities
Color intensities give information on object boundaries to counter the
smoothing of motion vectors across edges in optic flow estimate
Remove small, isolated regions
Segmentation Results
Simple translational motion model adequate
Camera motion
Unable to segment car in background
2-pixel border at level 2 of image pyramid (5x5 neighbourhood window)
translates to a 8-pixel border region at full resolution
Segmentation Results
Unsatisfactory segmentation when optic flow estimate is noisy
Further work on
Adding temporal continuity constraint for objects
Improving optic flow estimation e.g. Total Least Squares
Assess reliability of each motion vector estimate and incorporate into
segmentation
Gaussian Background Mixture Model
Per-pixel model
Each pixel is modeled as
sum of K weighted
Gaussians. K = 3~5
The weights reflects the
frequency the Gaussian is
identified as part of
background
Model updated adaptively
with learning rate and new
observation
X t X r , t
X g ,t
X b ,t
T
P( X t ) wk ,t k ,t X t , k ,t , k ,t
K
k 1
k ,t N k ,t , k ,t
k ,t k ,t ,r k ,t , g k ,t ,b k ,t k2,t I
T
Segmentation Algorithm
New
observation
Matching and model
updating
foreground
Update Formula
Matching Criterion
X t k ,t
background
2
If no match found: pixel is
foreground
If match found: background
is average of high w /
ranking Gaussians.
Foreground is average of
low ranking Gaussians
Update weights:
wk 1 wk M k
2
k ,t
Update Gaussian:
Match found:
m,t 1 1 m,t X t
m2 ,t 1 1 m2 ,t X t m,t X t m,t
T
No Match found:
Replace least possible Gaussian
with new observation.
Segmentation Result 1
• Background: “disappearing” electrical pole, blurring in the trees
• lane marks appear in both foreground/background
Segmentation Result 2
Cleaner background:
beginning of original sequence is purely background, so background
model was built faster.
Segmentation Result 3
Smaller global motion in original sequence:
Cleaner foreground and background.
Parameters matter
affects how fast the
background model
incorporates new
observation
K affects how sharp the
detail regions appears
Artifacts: Global Motion
Constant small motion caused by hand-held camera
Blurring of background
Lane marks (vertical motion) and electrical pole (horizontal
motion)
Global Motion Compensation
We used Phase
Correlation Motion
Estimation
Block-based method
Computationally
inexpensive comparing
to block matching
Segmentation After
Compensation
Segmentation After
Compensation
Corrects artifacts before mentioned
Still have problems: residue disappears slower
even with same learning rate
Q&A
Mixture model fails when …
Constant repetitive
motion (jittering)
High contrast between
neighborhood values
(edge regions)
The object would
appear in both
foreground and
background
Phase Correlation Motion
Estimation
Use block-based Phase
Correlation Function
(PCF) to estimate
translation vectors.
1 x 2 x d
1 f 2 f e
T
j 2 d f
1 f 2* f
f
e j 2 d
1 f 2 f
T
f
PCF x F 1 f x d
Introduction
Our Experiment
Obtain test data
We shoot our own test sequences at intersection of
Page Mill Rd. and I-280.
Only translational motions included in the sequences
Segmentation
Tun-Yu experimented on Gaussian mixture model
Wilson experimented on motion segmentation