+ All Categories
Home > Documents > CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients...

CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients...

Date post: 11-Jul-2020
Category:
Upload: others
View: 7 times
Download: 0 times
Share this document with a friend
38
CMSC 733: Computer Processing of Pictorial Information (Computer Vision) David Jacobs
Transcript
Page 1: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

CMSC 733: Computer Processing of Pictorial

Information (Computer Vision) David Jacobs

Page 2: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Vision

• ``to know what is where, by looking.’’ (Marr).

• Where• What

Page 3: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Why is Vision Interesting?

• Psychology– ~ 50% of cerebral cortex is for vision.– Vision is how we experience the world.

• Engineering– Want machines to interact with world.– Digital images are everywhere.

Page 4: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Vision is inferential: Light

(http://www-bcs.mit.edu/people/adelson/checkershadow_illusion.html)

Page 5: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Vision is inferential: Light

(http://www-bcs.mit.edu/people/adelson/checkershadow_illusion.html)

Page 6: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Vision is Inferential: Geometry

Page 7: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Vision is Inferential: Prior Knowledge

Page 8: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Vision is Inferential: Prior Knowledge

Page 9: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Computer Vision

• Inference Computation• Building machines that see• Applying computation to images• Modeling biological perception

Page 10: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Goals of this course

• Prepare students for research in CV• Breadth and depth

– Breadth: familiarity with (almost) all areas of computer vision.

• We will cover a lot of ground.– Depth: Intuitive understanding of

fundamental principles of vision.

Page 11: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Breadth

• Fourier transforms, convolution• Image denoising – linear• Image denoising – nonlinear

Page 12: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Topics (cont’d) Edge detection

Canny edge detector (from Wikipedia)

Page 13: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Image Segmentation

GrabCut: Interactive Foreground Extraction using Iterated Graph Cuts

Page 14: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Topics (cont’d) Background Subtraction

Page 15: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Topics (cont’d)

• Statistical modeling of images– Mixture of Gaussians, E-M– Markov processes, Markov random fields

Page 16: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

(Sharon, Balun, Brandt, Basri)

Texture in Boundary Detection

Page 17: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions
Page 18: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Texture Synthesis

Photo

Pattern Repeated

Page 19: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Texture

Computer Generated

Photo

Page 20: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Topics (cont’d)

• Image features – corners• Image matching – RANSAC, Hough

transform• Geometric transformations

Page 21: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Mosaicing

Page 22: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Tracking

(Comaniciu and Meer)

Page 23: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Topics (cont’d)

• Biological vision• Cameras and perspective• Stereo• Optical flow• Structure-from-motion• Lighting, photometric stereo• Classification – including fine-grained

classification• Shape

Page 24: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Detection

(Slide from Antonio Torralba)

Page 25: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Google street view 

(Slide from Antonio Torralba)

Page 26: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Google street view

(Slide from Antonio Torralba)

Page 27: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Some themes• Correspondence between images

– Stereo is all about correspondence– Optical flow is correspondence w/ linear approximation.– Classification requires corresponding features.

• Image gradients and image change– Edge detection = gradients– Corners: gradients in 2 directions– Optical flow: combines temporal and spatial gradients.– Biological vision sensitive to changes

• Statistical modeling– Diffusion processes, background, texture, classes

Page 28: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Depth: key equations and algorithms. For example…

• Convolution theorem• Diffusion equation• Brightness change constraint equation• Matrix factorization for SFM• Graph cuts for MRFs• Dynamic programming for stereo

matching• E-M

Page 29: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Course Work

• Lectures• Problem sets/projects (40%)

– Implement 5 classic algorithms• Midterm – Take home (20%)• Final Exam – In class (40%)• Readings

– Listed on class web page– Optional texts: Szeliski, Forsyth and Ponce

Page 30: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Modeling + Algorithms

• Build a simple model of the world(eg., flat, uniform intensity).

• Find provably good algorithms.• Experiment on real world.• Update model.Problem: Too often models are simplistic

or intractable.

Page 31: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Bayesian inference

• Bayes law: P(A|B) = P(B|A)*P(A)/P(B).• P(world|image) =

P(image|world)*P(world)/P(image)• P(image|world) is computer graphics

– Geometry of projection.– Physics of light and reflection.

• P(world) means modeling objects in world.Leads to statistical/learning approaches.

Problem: Too often probabilities can’t be known and are invented, or learned from inadequate data.

Page 32: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Discriminative Vision

• Develop problem with well defined i/o• Gather lots of labeled data• Train classifier/regressor• Problem: Generalization between

problems is difficult, can we get enough training data? Does this really provide understanding?

Page 33: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Engineering

• Focus on definite tasks with clear requirements.

• Try ideas based on theory and get experience about what works.

• Try to build reusable modules.Problem: Solutions that work under

specific conditions may not generalize.

Page 34: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Marr

• Theory of Computation• Representations and algorithms• Implementations.

• Primal Sketch• 2½D Sketch• 3D RepresentationsProblem: Are things really so modular?

Page 35: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Contact Info

Prof: David Jacobs Email: [email protected]

Office: Room 4421, A.V. Williams Building (Next to CSIC).

Office Hours: Tuesday, 2-3

TA: Jin Sun Email: [email protected]

Page 36: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Tools Needed for Course

• Math– Calculus– Geometry– Probability

• Computer Science– Algorithms– Programming, we’ll use Matlab.

• Signal Processing (we’ll teach a little).

Page 37: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Course Organization• Reading: Class notes, no required text.• 8 Problem sets, six with programming.• Midterm, Final Exam.• Grading: Problem sets 40%, midterm 20%;

final 40%.• Web page:

www.cs.umd.edu/~djacobs/CMSC733/CMSC733_13. htm

Page 38: CMSC 426: Image Processing (Computer Vision)djacobs/CMSC733/Introduction.pdf · • Image gradients and image change – Edge detection = gradients – Corners: gradients in 2 directions

Questions?


Recommended