Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of...

46
9.913 Pattern Recognition for Vision Class I - Overview Instructors: B. Heisele, Y. Ivanov, T. Poggio Fall 2004

Transcript of Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of...

Page 1: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

9.913 Pattern Recognition for Vision

Class I - Overview

Instructors: B. Heisele, Y. Ivanov, T. Poggio

Fall 2004

Page 2: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

TOC

• Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Fall 2004 Pattern Recognition for Vision

Page 3: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Administrivia

• Instructors: – Bernd Heisele – –

• Meet – 12

• Credits: 10H • Assignments:

– Small weekly – Paper presentation/discussion – Final project

Yuri Ivanov Tomaso Poggio

Th 10-

Fall 2004 Pattern Recognition for Vision

Page 4: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Syllabus

Sep 9 Y&B Y B

Oct 7 Y papers B T

All Nov 11 B

T&B

C&Y Dec 9 Y

All

- Overview, Introduction Sep 16 - Vision - Image formation and processing Sep 23 - Vision – Feature extraction I Sep 30 - PR/Vis - Feature Extraction II/Bayesian decisions B&Y

- PR - Density estimation Oct 14 - PR – Clasification Oct 21 - Biological Object Recognition Oct 28 - PR - Clustering Y&B proj Nov 4 - Paper Discussion

- App I - Object Detection/Recognition Nov 18 - App II - Morphable models Nov 25 - No class - Thanksgiving day Dec 2 - App III - Tracking

- App IV - Gesture and Action Recognition Dec 16 - Project presentation

Fall 2004 Pattern Recognition for Vision

Page 5: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Course Materials

• Books – Pattern Recognition – Computational Vision: Information Processing in

Perception and Visual Behavior – Suggested further reading

• Vision: Forsyth, Ponce, “Computer Vision: a Modern Approach” •

Learning”

• Slides, links

• Papers, notes, tutorials

• Office hours –

Duda, Hart and Stork, Optional - Mallot,

Machine Learning: Hastie, Tibshirani, Friedman, “The Elements of Statistical

No set hours – e-mail, or call

Fall 2004 Pattern Recognition for Vision

Page 6: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Computer Vision

Problems of Computer Vision

• Stereo • Shape from Shading

• Structure from Motion • Tracking • Object Detection/Recognition • Activity Detection/Recognition • … many more….

Fall 2004 Pattern Recognition for Vision

Page 7: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Machine Vision - Applications

Images removed due to copyright considerations.

• Automatic quality control • Robotics • Perceptual interfaces – human/machine interactions • Surveillance • …

Fall 2004 Pattern Recognition for Vision

Page 8: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Computer Vision – Shape-from-Shading

Find 3D surface parameters from a single image based on shading

Images: NASA

Images removed due to copyright considerations.

Fall 2004 Pattern Recognition for Vision

Page 9: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Computer Vision - Stereo

Reconstruct 3D surface from 2 2D images taken simultaneously

Images: A. Zisserman

Fall 2004 Images by A. Zisserman and P. Beardsley. Used with permission. Pattern Recognition for Vision

Page 10: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab
Page 11: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Computer Vision - Object Detection \ Recognition

Find objects in the image, determine what they are

Eg: Face detection and recognition:

Photograph by MIT OCW.

Fall 2004 Pattern Recognition for Vision

Page 12: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Computer Vision - Tracking

Camera view Connected components

Trajectories over time An object

Determine objects’ positions over multiple frames

Tracker – Chris Stauffer, Eric Grimson

Figures and photographs from: Stauffer, and Grimson. "Learning patterns of activity using real-time tracking." IEEE Transactions on Pattern Analysis and Machine Intelligence 22, no. 8 (August 2000): 747-757. Courtesy of IEEE, Chris Stauffer, and Eric Grimson. Copyright 2000 IEEE. Used with Permission.

Fall 2004 Pattern Recognition for Vision

Page 13: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Pattern Recognition

“Big Four” Problems of Machine Learning • Classification • Density Estimation • Clustering • Regression

Fall 2004 Pattern Recognition for Vision

Page 14: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Classification

Training data

Decision boundary

Class model ?

Test data

Oranges

Apples

Images by MIT OCW.

Fall 2004 Pattern Recognition for Vision

Page 15: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Density Estimation

µ, Σ

Generating densityIndividual samples

Image by MIT OCW.

Fall 2004 Pattern Recognition for Vision

Page 16: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Clustering

Data

Spatial clusters Images by MIT OCW.

Fall 2004 Pattern Recognition for Vision

Page 17: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Regression

Regressor Measurements

Jun 1 2 3 4 … Jul 1 2 3 … Aug 1 2 3 … Sep 1 2 3

Images by MIT OCW.

Fall 2004 Pattern Recognition for Vision

Page 18: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Vision – Image Formation and Processing

Topics

• Image formation • Color spaces • Point operators • Neighborhood operators • Edge detection • Motion

Fall 2004 Pattern Recognition for Vision

Page 19: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Vision - Fundamentals

ϕe

eνe

ϕl

νll

• Image formation

• Source properties: • Type of source • Occlusions / shadows • Direction

• Surface properties: • Albedo (fraction of light reflected), • Shape, • Smoothness, • Orientation

• Imager: • Color properties • Distortion • Focal length • F-stop (how wide the iris) • Orientation

• Representation: • Bit depth • Color space

Fall 2004 Pattern Recognition for Vision

Page 20: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Vision - Color

• Light is perceived by two types of receptors in the human eye– Rods – Cones

• Color is perceived by 3 types of cones – “Red” (64%) – “Green” (34%) – “Blue” (2%)

120,000,000 rods6,000,000 cones

-80 -60 -40 -20 0 20 40 60 80

50

25

75

100

125

150

175

200

Angular Separation from Fovea (Degrees)

Den

sity

in T

housa

nds

per

Squar

e m

m

CONE DENSITY

ROD DENSITY

ROD DENSITY

Figure by MIT OCW.

Fall 2004 Pattern Recognition for Vision

Page 21: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Color – CIE Chromaticity Diagram

All Visible Colors (CIE 1931 Chromaticity diagram):

: http://www.cie.co.at/cie/ and http://www.ledtronics.com/datasheets/Pages/chromaticity/097b.htm

Figure removed due to copyright reasons. Please see

Fall 2004 Pattern Recognition for Vision

Page 22: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Point Operators – Image Arithmetic

Point operators query and affect only a single pixel at a time

Original photo and accompanying processed photo both removed due to copyright reasons.

Thresholding of a very famous person:

Fall 2004 Pattern Recognition for Vision

Page 23: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Pattern Recognition – Bayesian Decision Theory

Topics

• Intro to Pattern Recognition and Machine Learning • Bayes rule • Normal density • Minimum error rate classification • Decision surfaces • ROC curves and classifier performance

Fall 2004 Pattern Recognition for Vision

Page 24: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Bayesian Decision Theory

( | ) ( )( | )

( ) P

P x P x w w

w =

Posterior Likelihood Prior

Fundamental Law of Probability and Statistics

Evidence

Image removed due to copyright considerations.

P x Rev. Thomas Bayes

(1702-1761)

Bayes Rule:

Fall 2004 Pattern Recognition for Vision

Page 25: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Expected Error

How do we compare two class models given the data?

2( , )P xw1( , )P xw

Decision boundary

Expected Error

Fall 2004 Pattern Recognition for Vision

Page 26: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Likelihood Ratio Test

1

2

( | ) 1

( | ) P x P x

w w

How do we compare two class models given the data?

1 1

2 2

( | 1

( | P P

w w w w

1 2

2 1

( | ) ( ) ( | ) ( )

P P

w w w w

<>

Likelihood Ratio Test

<>

) ( ) ) ( )

P x P x

<>

P x P x

Fall 2004 Pattern Recognition for Vision

Page 27: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Pattern Recognition – Density Estimation

Topics

• Parametric density estimation • ML parameter estimation • Bayesian parameter estimation

• Non-parametric • K-Nearest Neighbors • Parzen Windows

Fall 2004 Pattern Recognition for Vision

Page 28: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Density Estimation

Say we need to teach a robot about oranges Main feature: color

wavelength

Density of examples

morange

s

21 21

( | , ) 2

iw

i e m

sm s ps

-� � - � �Ł ł=Assume a Gaussian:

Need m and s to maximize P(w1 w2 w3 N |m,s)

Solution: factor, log, differentiate and set to 0

Image removed due to copyright considerations.

P w

… w

Fall 2004 Pattern Recognition for Vision

Page 29: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Density Estimation

wavelength

s

Say we need to teach a robot about apples

mapple orange

Oops!!!

method

Density of examples

Image removed due to copyright considerations.

= m

Need a multi-modal distribution, or a non-parametric

Fall 2004 Pattern Recognition for Vision

Page 30: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Pattern Recognition – Clustering

Topics

• K-Means algorithm • EM algorithm • Trees • Clustering for tracking

Fall 2004 Pattern Recognition for Vision

Page 31: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Clustering/Vector Quantization

Find tight groups in the data

algorithm 1. Randomly place K centers 2. Assign points to the closest one 3. Compute new centers (means) 4. Go to 2 until convergence

x

y

K-Means

“Hard” label assignment

Fall 2004 Pattern Recognition for Vision

Page 32: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Clustering/Vector Quantization

Find tight groups in the data

EM algorithm 1. Randomly place K Gaussians 2. Compute the posterior for

each point 3. Average data with respect to

posterior of each class 4. Go to 2 until convergence

x

y

“Soft” label assignment

Fall 2004 Pattern Recognition for Vision

Page 33: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Clustering – Another Example

In the image we can cluster pixels in the RGB space

4 color clusters

Cluster assignments

Source – 24 bit/pix

Color-quantized – 2 bit/pix

Fall 2004 Pattern Recognition for Vision

Page 34: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Vision – Movement, Activity, Action

Topics

• Motion • Gesture • Surveillance

Fall 2004 Pattern Recognition for Vision

Page 35: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Application: Motion and Gesture Recognition

Is motion important for object recognition?

Photos and figures from: Bobick, A., and J. Davis. "The Representation and Recognition of Action Using Temporal Templates." IEEE Transactions on Pattern Analysis and Machine Intelligence 23, no. 3 (2002). Courtesy of IEEE, A. Bobick, and J. Davis. Copyright 2002 IEEE. Used with Permission.

Fall 2004 Pattern Recognition for Vision

Page 36: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Motion

Video:

Cumulative MEI:

gross body motion…

Now shape can be matched

Photos and figures from: Bobick, A., and J. Davis. "The Representation and Recognition of Action Using Temporal Templates." IEEE Transactions on Pattern Analysis and Machine Intelligence 23, no. 3 (2002). Courtesy of IEEE, A. Bobick, and J. Davis. Copyright 2002 IEEE. Used with Permission.

One way to do it – turn it into object recognition:

Problems: Direction, Segmentation, Only appropriate for determining

Fall 2004 Pattern Recognition for Vision

Page 37: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Vision - Tracking

• Systems where the next state is a linear combination of the the previous state, a control signal, and noise.

• Observations are a linear combination of the current state and noise

Linear Dynamic Systems:

Fall 2004 Pattern Recognition for Vision

Page 38: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Tracking

• Trackers combine system models {F, B, H}, with observations to estimate the state.

• Unimodal estimate of the state

• Miltimodal tracker frameworks combine multiple

Multiple Hypothesis Testing, Particle Filtering)

trackers, like Kalman Filters, maintain a single

unimodal trackers to track multimodal distributions. (e.g.:

Fall 2004 Pattern Recognition for Vision

Page 39: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Tracking - Example

Courtesy of Chris Wren. Used with permission.

Fall 2004 Pattern Recognition for Vision

Page 40: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Gesture

Tracking allows modeling gesture as time series:

After this sequential density is estimated things are easy again

Hidden Markov Model (HMM): • A mixture of simple densities • With dynamic constraints

Fall 2004 Pattern Recognition for Vision

Page 41: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Applications IV - Surveillance

Fall 2004 Pattern Recognition for Vision

Page 42: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Parse: Car-Pass-Through

Action label Object tracks

Temporal extent

Component labels

Figures from: Ivanov, Yuri, Chris Stauffer, Aaron Bobick, and W IEEE Workshop on Visual Surveillance (ICCV 2001) (1999). Courtesy of IEEE, Y. Ivanov, C. Stauffer, A. Bobick, W. E. L. Grimson. Used with Permission.

. E. L. Grimson. "Video Surveillance of Interactions."

Fall 2004 Pattern Recognition for Vision

Page 43: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Parse: Drive-In

Action label Object tracks

Temporal extent

Component labels

Figures from: Ivanov, Yuri, Chris Stauffer, Aaron Bobick, and W IEEE Workshop on Visual Surveillance (ICCV 2001) (1999). Courtesy of IEEE, Y. Ivanov, C. Stauffer, A. Bobick, W. E. L. Grimson. Copyright 1999 IEEE. Used with Permission.

. E. L. Grimson. "Video Surveillance of Interactions."

Fall 2004 Pattern Recognition for Vision

Page 44: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Parse: Person-Pass-Through

Action label Object tracks

Temporal extent

Component labels

Figures from: Ivanov, Yuri, Chris Stauffer, Aaron Bobick, and W IEEE Workshop on Visual Surveillance (ICCV 2001) (1999). Courtesy of IEEE, Y. Ivanov, C. Stauffer, A. Bobick, W. E. L. Grimson. Copyright 1999 IEEE. Used with Permission.

. E. L. Grimson. "Video Surveillance of Interactions."

Fall 2004 Pattern Recognition for Vision

Page 45: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Parse: Car-Pass-Through

Action label Object tracks

Temporal extent

Component labels

Figures from: Ivanov, Yuri, Chris Stauffer, Aaron Bobick, and W IEEE Workshop on Visual Surveillance (ICCV 2001) (1999). Courtesy of IEEE, Y. Ivanov, C. Stauffer, A. Bobick, W. E. L. Grimson. Copyright 1999 IEEE. Used with Permission.

. E. L. Grimson. "Video Surveillance of Interactions."

Fall 2004 Pattern Recognition for Vision

Page 46: Class I - Overview - MIT OpenCourseWare · PDF fileTOC • Administrivia • Problems of Computer Vision and Pattern Recognition • Overview of classes • Quick review of Matlab

Parse: Drop-Off

Action label Object tracks

Temporal extent

Component labels

Figures from: Ivanov, Yuri, Chris Stauffer, Aaron Bobick, and W IEEE Workshop on Visual Surveillance (ICCV 2001) (1999). Courtesy of IEEE, Y. Ivanov, C. Stauffer, A. Bobick, W. E. L. Grimson. Copyright 1999 IEEE. Used with Permission.

. E. L. Grimson. "Video Surveillance of Interactions."

Fall 2004 Pattern Recognition for Vision