+ All Categories
Home > Documents > Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ......

Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ......

Date post: 23-May-2020
Category:
Upload: others
View: 15 times
Download: 3 times
Share this document with a friend
28
Transcript
Page 1: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –
Page 2: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Overview

IntroductionObject TrackingVehicle Tracking

Theory & ImplementationSegmentationTracking

Results

Q & A

Page 3: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Introduction – Object Tracking

Object Tracking

Object representation

Feature Selection

Object Detection

Tracking

Page 4: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Introduction – Object Tracking

Object Representation

Page 5: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Introduction – Object Tracking

Feature Selection for Tracking

Colour

Edges

Optical Flow

Texture

Page 6: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Introduction – Object Tracking

Object Detection

Point detectors Moravec’s DetectorHarris DetectorScale Invariant Feature TransformAffine Invariant Point Detector

Segmentation Mean-ShiftGraph-CutActive Contours

Background Modeling Mixture of GaussiansEigenbackgroundWall FlowerDynamic Texture Background

Supervised Classifiers Support Vector MachinesNeural NetworksAdaptive Boosting

Page 7: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Introduction – Object Tracking

Tracking

Point Tracking (a)Kernel Tracking (b)Silhouette Tracking (c) & (d)

Page 8: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Introduction – Object Tracking

Tracking Challenges

Correspondence

Occlusion

Page 9: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Introduction – Vehicle Tracking

Vehicle Tracking

Motivation

Traffic information Reduce urban transportation industry costsFuture: Develop “intelligent” transportation system

Surveillance (I’d rather not mention)Public SectorPrivate Sector

Page 10: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Introduction – Vehicle Tracking

Object

Track vehicles on a highway

Count them

Implementation

Real-time

OpenCV & C++

Page 11: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory Overview

SegmentationNoise removal (minimization)Background subtractionContour isolationRectangle fitting

TrackingCorrespondenceAdding & removing vehiclesPersistencePrediction

Page 12: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory – Segmentation

Noise minimization

Gaussian BlurLinear Convolution Filter

Page 13: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory – Segmentation

Convolution

Gaussian Kernel is Separablewhere A (and G) is the kernel and I is the image

Page 14: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory – Segmentation

Gaussian Kernel is Separable

Page 15: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory – Segmentation

Background Subtraction

KaewTraKulPong, P. and Bowden, R. (2001). “An Improved Adaptive Background Mixture Model for Real-time Tracking with Shadow Detection”

OpenCV implementation (without shadow detection)

Page 16: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory – Segmentation

Background Subtraction (continued)

Adaptive Gaussian Mixture Model

Each pixel is modelled by a mixture of K Gaussian

distributions

BG Pixel <= T stdev

FG Pixel > T stdev

where T is the threshold

Page 17: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory – Segmentation

Background Subtraction (continued)

Online Expectation-Maximization (EM)

Iterative parameter estimation

Benefits

Mathematica demonstration

Page 18: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory – Segmentation

Finding Outside Contours

Find Enclosed box

Classification (simple for vehicles)Keep boxes with size > Threshold(prevents noise from being detected as a car)

Page 19: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory – Vehicle Tracking

CorrespondenceCompare each new segmented object to each tracked object with the distance cost function:

Add each comparison that is less than T to a listOrder list (lowest cost first)Match first and remove all match with

2 2( ) ( )

where is the new object and is the tracked object

i i i i ix x y y

i i

d a b a b

a b

= − + −

and i ia b

Page 20: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory – Vehicle Tracking

Adding VehiclesMark all detected unmatched vehicles as potentialIf found in next g frames then add

Subtracting VehiclesAll vehicles not found in h

PersistenceObject not found within h then not updated but still considered trackedOcclusion

[ ], 1,2,...,10g h∈

Page 21: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory – Vehicle Tracking

Prediction

Kalman Filter

Estimates a system’s state (optimal)

Maximizes a posteriori probability

Assumptions:

system’s dynamics are linear

noise is additive, white, and Gaussian

Page 22: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory – Vehicle Tracking

Kalman Filter (continued)Current state vector xk

F : transfer matrixB : relates the controls to xkuk : control vector wk : the process noise vector

noise in state of the system. wk : random variable N(0;Qk).

Page 23: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory – Vehicle Tracking

Kalman Filter (continued)Measurement states zk

Hk : relates xk to zkvk : measurement noise

random variable with N(0; Rk ).

Page 24: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory – Vehicle Tracking

Kalman Filter (continued)Predict

Pk : error covariance

Page 25: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory – Vehicle Tracking

Kalman Filter (continued)Update

Kk : Kalman gainweight to assign to new information

Page 26: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Theory – Vehicle Tracking

Kalman Filter Implementation Details

1 0 00 1 0

, 0 0 1 00 0 0 1

1 00 1

, 0 00 0

x

y

x

y

x d ty d t

x Fvv

zz H

z

⎡ ⎤ ⎡ ⎤⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥= =⎢ ⎥ ⎢ ⎥⎢ ⎥ ⎢ ⎥

⎣ ⎦⎣ ⎦⎡ ⎤⎢ ⎥⎡ ⎤ ⎢ ⎥= =⎢ ⎥ ⎢ ⎥⎣ ⎦⎢ ⎥⎣ ⎦

Page 27: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Results

Page 28: Overview - UWaterloocompneuro.uwaterloo.ca/files/Tracking Presentation.pdfOverview Introduction ... Tracking. Introduction – Object Tracking Object Representation. Introduction –

Questions and Discussion


Recommended