CIS 489/689: Computer Vision Instructor: Christopher Rasmussen Course web page:...

Post on 31-Dec-2015

217 views 0 download

Tags:

transcript

CIS 489/689:Computer Vision

Instructor: Christopher Rasmussen

Course web page:vision.cis.udel.edu/cv

February 12, 2003 Lecture 1

Course description

An introduction to the analysis of images and video in order to recognize, reconstruct, model, and otherwise infer static and dynamic properties of objects in the three-dimensional world.  We will study the geometry of image formation; basic concepts in image processing such as smoothing, edge and feature detection, color, and texture; segmentation; shape representation including deformable templates; stereo vision; motion estimation and tracking; techniques for 3-D reconstruction; and probabilistic approaches to recognition and classification.

Outline

• What is Vision?• Course outline• Applications• About the course

The Vision Problem

How to infer salient properties of 3-D world from time-varying

2-D image projection

Computer Vision Outline

• Image formation• Low-level

– Single image processing– Multiple views

• Mid-level– Estimation, segmentation

• High-level – Recognition– Classification

Image Formation

• 3-D geometry• Physics of light• Camera properties

– Focal length– Distortion

• Sampling issues– Spatial– Temporal

Low-level: Single Image Processing

• Filtering– Edge– Color – Local pattern similarity

• Texture– Appearance characterization from the

statistics of applying multiple filters• 3-D structure estimation from…

– Shading– Texture

Low-level: Multiple Views

• Stereo– Structure from two views

• Structure from motion– What can we learn in general from

many views, whether they were taken simultaneously or sequentially?

Mid-Level: Estimation, Segmentation

• Estimation: Fitting parameters to data– Static (e.g., shape)– Dynamic (e.g., tracking)

• Segmentation/clustering– Breaking an image or image

sequence into a few meaningful pieces with internal similarity

High-level: Recognition, Classification

• Recognition: Finding and parametrizing a known object

• Classification– Assignment to known categories

using statistics/probability to make best choice

Applications• Inspection

– Factory monitoring: Analyze components for deviations– Character recognition for mail delivery, scanning

• Biometrics (face recognition, etc.), surveillance• Image databases: Image search on Google, etc.• Medicine

– Segmentation for radiology– Motion capture for gait analysis

• Entertainment– 1st down line in football, virtual advertising– Matchmove, rotoscoping in movies– Motion capture for movies, video games

• Architecture, archaeology: Image-based modeling, etc.• Robot vision

– Obstacle avoidance, object recognition– Motion compensation/image stabilization

Applications: Factory Inspection

Cognex’s “CapInspect” system

Applications: Face Detection

courtesy of H. Rowley

Applications: Text Detection & Recognition

from J. Zhang et al.

Applications: MRI Interpretation

Coronal slice of brain Segmented white matter from W. Wells et al.

Detection and Recognition: How?

• Build models of the appearance characteristics (color, texture, etc.) of all objects of interest

• Detection: Look for areas of image with sufficiently similar appearance to a particular object

• Recognition: Decide which of several objects is most similar to what we see

• Segmentation: “Recognize” every pixel

Applications: Football First-Down Line

courtesy of Sportvision

Applications: Virtual Advertising

courtesy of Princeton Video Image

First-Down Line, Virtual Advertising: How?

• Sensors that measure pan, tilt, zoom and focus are attached to calibrated cameras at surveyed positions

• Knowledge of the 3-D position of the line, advertising rectangle, etc. can be directly translated into where in the image it should appear for a given camera

• The part of the image where the graphic is to be inserted is examined for occluding objects like the ball, players, and so on. These are recognized by being a sufficiently different color from the background at that point. This allows pixel-by-pixel compositing.

Applications: Inserting Computer Graphics with a

Moving Camera

Opening titles from the movie “Panic Room”

Applications: Inserting Computer Graphics with a

Moving Camera

courtesy of 2d3

CG Insertion with a Moving Camera: How?

• This technique is often called matchmove• Once again, we need camera calibration, but

also information on how the camera is moving—its egomotion. This allows the CG object to correctly move with the real scene, even if we don’t know the 3-D parameters of that scene.

• Estimating camera motion:– Much simpler if we know camera is moving sideways

(e.g., some of the “Panic Room” shots), because then the problem is only 2-D

– For general motions: By identifying and following scene features over the entire length of the shot, we can solve retrospectively for what 3-D camera motion would be consistent with their 2-D image tracks. Must also make sure to ignore independently moving objects like cars and people.

Applications: Rotoscoping

2d3’s Pixeldust

Applications: Motion Capture

Vicon software:12 cameras, 41 markers for body capture;

6 zoom cameras, 30 markers for face

Applications: Motion Capture without Markers

courtesy of C. Bregler

Motion Capture: How?

• Similar to matchmove in that we follow features and estimate underlying motion that explains their tracks

• Difference is that the motion is not of the camera but rather of the subject (though camera could be moving, too)– Face/arm/person has more degrees of

freedom than camera flying through space, but still constrained

• Special markers make feature identification and tracking considerably easier

• Multiple cameras gather more information

Applications: Image-Based Modeling

courtesy of P. Debevec

Façade project: UC Berkeley Campanile

Image-Based Modeling: How?

• 3-D model constructed from manually-selected line correspondences in images from multiple calibrated cameras

• Novel views generated by texture-mapping selected images onto model

Applications: Robotics

Autonomous driving: Lane & vehicle tracking (with radar)

Applications: Mosaicing for Image Stabilization from a

UAV

courtesy of S. Srinivasan

Course Prerequisites

• Background in/comfort with:– Linear algebra– Multi-variable calculus– Statistics, probability

• Homeworks will use Matlab, so an ability to program in:– Matlab, C/C++, Java, or equivalent

Grading

• 60%: 6 programming assignments/ problem sets with 9-14 days to finish each one

• 15%: Midterm exam (on March 28, the Friday before spring break)

• 25%: Final exam

Readings

• Textbook: Computer Vision: A Modern Approach, by D. Forsyth and J. Ponce

• Supplemental readings will be available online as PDF files

• Try to complete assigned reading before corresponding lecture

Details

• Homework– Mostly programming in Matlab– Some math-type problems to solve

• Must turn in typeset PDF files—not hand-written. I’ll explain this on Wednesday

– Upload through course web page– Lateness policy

• Accepted up to 5 days after deadline; 10% penalty per day subtracted from on-time mark you would have gotten

• Exams– Closed book– Material will be from lectures plus assigned

reading

More Details

• Instructor– E-mail: cer@cis.udel.edu– Office hours (by appointment in Smith 409):

• Mondays, 3:30-4:30 pm• Tuesdays, 9-10 am

• TA: Qi Li– Email: qili@cis.udel.edu– Office hours (Pearson 115A)

• Fridays 3:30-5:30 pm

Announcements

• E-mail me ASAP to get ID code; then register for homework submission on the class web page

• Try to get Matlab & LaTeX running in some form – Register for account on Evans 133

machines if you need one• Read Matlab & LaTeX primers for

Friday

More questions?

First try the web page:vision.cis.udel.edu/cv

The TA should be able to help with many procedural and

content issues, but feel free to e-mail me if necessary