Why is computer vision difficult?

Similar documents
CS4670/5670: Intro to Computer Vision Kavita Bala

CS4442/9542b Artificial Intelligence II prof. Olga Veksler

CS4442/9542b Artificial Intelligence II prof. Olga Veksler

Image processing. Reading. What is an image? Brian Curless CSE 457 Spring 2017

EECS 556 Image Processing W 09. Image enhancement. Smoothing and noise removal Sharpening filters

Think-Pair-Share. What visual or physiological cues help us to perceive 3D shape and depth?

2D Image Processing INFORMATIK. Kaiserlautern University. DFKI Deutsches Forschungszentrum für Künstliche Intelligenz

Computer Vision and Graphics (ee2031) Digital Image Processing I

Miniature faking. In close-up photo, the depth of field is limited.

Image gradients and edges April 11 th, 2017

Image gradients and edges April 10 th, 2018

CS4670/5670: Computer Vision Kavita Bala. Lecture 3: Filtering and Edge detec2on

Bias-Variance Trade-off (cont d) + Image Representations

Applications of Image Filters

Local features: detection and description. Local invariant features

Filters and Pyramids. CSC320: Introduction to Visual Computing Michael Guerzhoy. Many slides from Steve Marschner, Alexei Efros

CPSC 425: Computer Vision

CS5670: Computer Vision

Epipolar Geometry and Stereo Vision

ME/CS 132: Introduction to Vision-based Robot Navigation! Low-level Image Processing" Larry Matthies"

Image gradients and edges

Prof. Feng Liu. Winter /15/2019

CS4670: Computer Vision Noah Snavely

Computer Vision Lecture 17

Computer Vision Lecture 17

Stereo. Outline. Multiple views 3/29/2017. Thurs Mar 30 Kristen Grauman UT Austin. Multi-view geometry, matching, invariant features, stereo vision

Recap: Features and filters. Recap: Grouping & fitting. Now: Multiple views 10/29/2008. Epipolar geometry & stereo vision. Why multiple views?

Lecture 4: Spatial Domain Transformations

Stereo: Disparity and Matching

Lecture 4: Image Processing

Project 4 Results. Representation. Data. Learning. Zachary, Hung-I, Paul, Emanuel. SIFT and HoG are popular and successful.

Filters (cont.) CS 554 Computer Vision Pinar Duygulu Bilkent University

Computer Vision: 4. Filtering. By I-Chen Lin Dept. of CS, National Chiao Tung University

Edge and corner detection

Local features: detection and description May 12 th, 2015

Solution: filter the image, then subsample F 1 F 2. subsample blur subsample. blur

School of Computing University of Utah

Lecture 2 Image Processing and Filtering

Midterm Wed. Local features: detection and description. Today. Last time. Local features: main components. Goal: interest operator repeatability

EECS150 - Digital Design Lecture 14 FIFO 2 and SIFT. Recap and Outline

Edge Detection CSC 767

Does everyone have an override code?

Local Feature Detectors

The SIFT (Scale Invariant Feature

Stereo. 11/02/2012 CS129, Brown James Hays. Slides by Kristen Grauman

BSB663 Image Processing Pinar Duygulu. Slides are adapted from Selim Aksoy

Peripheral drift illusion

CS 4495 Computer Vision A. Bobick. Motion and Optic Flow. Stereo Matching

Computer Vision I - Basics of Image Processing Part 1

Computer Vision for HCI. Topics of This Lecture

What have we leaned so far?

CS 4495 Computer Vision. Linear Filtering 2: Templates, Edges. Aaron Bobick. School of Interactive Computing. Templates/Edges

CS 4495 Computer Vision A. Bobick. Motion and Optic Flow. Stereo Matching

Separable Kernels and Edge Detection

CS5670: Computer Vision

Fundamental matrix. Let p be a point in left image, p in right image. Epipolar relation. Epipolar mapping described by a 3x3 matrix F

Broad field that includes low-level operations as well as complex high-level algorithms

Local invariant features

Ninio, J. and Stevens, K. A. (2000) Variations on the Hermann grid: an extinction illusion. Perception, 29,

Lecture 6: Edge Detection

EXAM SOLUTIONS. Image Processing and Computer Vision Course 2D1421 Monday, 13 th of March 2006,

CS4670: Computer Vision

EE795: Computer Vision and Intelligent Systems

Recall: Derivative of Gaussian Filter. Lecture 7: Correspondence Matching. Observe and Generalize. Observe and Generalize. Observe and Generalize

Edges and Binary Images

Texture and Other Uses of Filters

Fitting. Lecture 8. Cristian Sminchisescu. Slide credits: K. Grauman, S. Seitz, S. Lazebnik, D. Forsyth, J. Ponce

Wikipedia - Mysid

Multi-stable Perception. Necker Cube

Final project bits and pieces

Edge Detection. Computer Vision Shiv Ram Dubey, IIIT Sri City

Lecture 2: 2D Fourier transforms and applications

Image Features: Local Descriptors. Sanja Fidler CSC420: Intro to Image Understanding 1/ 58

Linear Algebra Review

Chaplin, Modern Times, 1936

Templates, Image Pyramids, and Filter Banks

NAME: Sample Final Exam (based on previous CSE 455 exams by Profs. Seitz and Shapiro)

Review of Filtering. Filtering in frequency domain

Epipolar Geometry and Stereo Vision

EE795: Computer Vision and Intelligent Systems

Finally: Motion and tracking. Motion 4/20/2011. CS 376 Lecture 24 Motion 1. Video. Uses of motion. Motion parallax. Motion field

Local features and image matching. Prof. Xin Yang HUST

Introductions. Today. Computer Vision Jan 19, What is computer vision? 1. Vision for measurement. Computer Vision

CS 4495 Computer Vision Motion and Optic Flow

Texture. Texture. 2) Synthesis. Objectives: 1) Discrimination/Analysis

Edge and Texture. CS 554 Computer Vision Pinar Duygulu Bilkent University

Edge detection. Winter in Kraków photographed by Marcin Ryczek

Lecture 10: Multi view geometry

Digital Image Processing. Image Enhancement - Filtering

Edge Detection. CSE 576 Ali Farhadi. Many slides from Steve Seitz and Larry Zitnick

Optical flow and tracking

convolution shift invariant linear system Fourier Transform Aliasing and sampling scale representation edge detection corner detection

Correspondence and Stereopsis. Original notes by W. Correa. Figures from [Forsyth & Ponce] and [Trucco & Verri]

Midterm Examination CS 534: Computational Photography

Sampling and Reconstruction. Most slides from Steve Marschner

All good things must...

Edge Detection. Today s reading. Cipolla & Gee on edge detection (available online) From Sandlot Science

Image Processing. Traitement d images. Yuliya Tarabalka Tel.

Feature Tracking and Optical Flow

Public Library, Stereoscopic Looking Room, Chicago, by Phillips, 1923

Transcription:

Why is computer vision difficult? Viewpoint variation Illumination Scale Why is computer vision difficult? Intra-class variation Motion (Source: S. Lazebnik) Background clutter Occlusion

Challenges: local ambiguity slide credit: Fei-Fei, Fergus & T But there are lots of cues we can exploit Source: S. Lazebn 2

Bottom line Perception is an inherently ambiguous problem Many different 3D scenes could have given rise to a particular 2D picture We often need to use prior knowledge about the structure of the world Image source: F. Du Course overview (tentative). Low-level vision image processing, edge detection, feature detection, cameras, image formation 2. Geometry and algorithms projective geometry, stereo, structure from motion, Markov random fields 3. Recognition face detection / recognition, category recognition, segmentation 4. Light, color, and reflectance 5. Advanced topics 3

Projects (tentative) Roughly five projects First one will be done solo, others in groups You can discuss the projects on a whiteboard, but all code must be your (or your group s) own First project to be released today or tomorrow Project: Image Scissors 4

Project: Feature detection and matching Project: Creating panoramas 5

Project: Recognition Face recognition Location recognition Object category recognition Grading Occasional quizzes (at the beginning of class) One prelim, one final exam Rough grade breakdown: Quizzes: 5% Midterm: 5% Programming projects: 60% Final exam: 5% 6

Late policy Two late days will be available for the semester Late projects will be penalized by 25% for each day it is late, and no extra credit will be awarded. Questions? 7

CS4670/5670: Intro to Computer Vision Noah Snavely Lecture : Images and image filtering Hybrid Images, Oliva et al., http://cvcl.mit.edu/hybridimage.htm CS4670: Computer Vision Noah Snavely Lecture : Images and image filtering Hybrid Images, Oliva et al., http://cvcl.mit.edu/hybridimage.htm 8

CS4670: Computer Vision Noah Snavely Lecture : Images and image filtering Hybrid Images, Oliva et al., http://cvcl.mit.edu/hybridimage.htm CS4670: Computer Vision Noah Snavely Lecture : Images and image filtering Hybrid Images, Oliva et al., http://cvcl.mit.edu/hybridimage.htm 9

Reading Szeliski, Chapter 3.-3.2 What is an image? 0

What is an image? Digital Camera We ll focus on these in this class (More on this process later) The Eye Source: A. Efros What is an image? A grid (matrix) of intensity values 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 20 0 255 255 255 255 255 255 255 255 255 255 75 75 75 255 255 255 255 255 255 = 255 255 75 95 95 75 255 255 255 255 255 255 255 255 96 27 45 75 255 255 255 255 255 255 255 255 27 45 75 75 75 255 255 255 255 255 255 255 27 45 200 200 75 75 95 255 255 255 255 255 27 45 200 200 75 75 95 47 255 255 255 255 27 45 45 75 27 27 95 47 255 255 255 255 74 27 27 27 95 95 95 47 255 255 255 255 255 74 74 74 74 74 74 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 (common to use one byte per value: 0 = black, 255 = white)

What is an image? We can think of a (grayscale) image as a function, f, from R 2 to R: f (x,y) gives the intensity at position (x,y) f (x, y) x y snoop 3D view A digital image is a discrete (sampled, quantized) version of this function Image transformations As with any function, we can apply operators to an image g (x,y) = f (x,y) + 20 g (x,y) = f (-x,y) We ll talk about a special kind of operator, convolution (linear filtering) 2

Question: Noise reduction Given a camera and a still scene, how can you reduce noise? Take lots of images and average them! What s the next best thing? Source: S. Seitz Image filtering Modify the pixels in an image based on some function of a local neighborhood of each pixel 0 4 5 3 5 7 Some function 7 Local image data Modified image data Source: L. Zhang 3

Linear filtering One simple version: linear filtering (cross-correlation, convolution) Replace each pixel by a linear combination (a weighted sum) of its neighbors The prescription for the linear combination is called the kernel (or mask, filter ) 0 5 3 0 0 0 4 6 0 0.5 0 8 8 0 0.5 Local image data kernel Modified image data Source: L. Zhang Cross-correlation Let be the image, be the kernel (of size 2k+ x 2k+), and be the output image This is called a cross-correlation operation: Can think of as a dot product between local neighborhood and kernel for each pixel 4

Convolution Same as cross-correlation, except that the kernel is flipped (horizontally and vertically) This is called a convolution operation: Convolution is commutative and associative Convolution Adapted from F. Durand 5

Mean filtering * 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 90 90 90 90 0 0 0 0 0 90 0 90 90 90 0 0 0 0 0 90 90 90 90 90 0 0 = 0 0 0 0 0 0 0 0 0 0 0 0 90 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 20 30 30 30 20 0 0 20 40 60 60 60 40 20 0 30 60 90 90 90 60 30 0 30 50 80 80 90 60 30 0 30 50 80 80 90 60 30 0 20 30 50 50 60 40 20 0 20 30 30 30 30 20 0 0 0 0 0 0 0 0 0 Linear filters: examples 0 0 0 * 0 0 = 0 0 0 Original Identical image Source: D. Lowe 6

Linear filters: examples 0 0 0 * 0 0 = 0 0 0 Original Shifted left By pixel Source: D. Lowe Linear filters: examples * = Original Blur (with a mean filter) Source: D. Lowe 7

Linear filters: examples * 0 0 0 0 2 0 0 0 0 - = Original Sharpening filter (accentuates edges) Source: D. Lowe Sharpening Source: D. Lowe 8

Smoothing with box filter revisited Source: D. Forsyth Gaussian Kernel Source: C. Rasmussen 9

Gaussian filters = pixel = 5 pixels = 0 pixels = 30 pixels Mean vs. Gaussian filtering 20

Gaussian filter Removes high-frequency components from the image (low-pass filter) Convolution with self is another Gaussian * = Convolving twice with Gaussian kernel of width = convolving once with kernel of width Source: K. Grauman Sharpening revisited What does blurring take away? = original Let s add it back: smoothed (5x5) detail + α = original detail sharpened Source: S. Lazebnik 2

Sharpen filter image blurred image unit impulse (identity) scaled impulse Gaussian Laplacian of Gaussian Sharpen filter unfiltered filtered 22

Optical Convolution Camera shake = * Source: Fergus, et al. Removing Camera Shake from a Single Photograph, SIGGRAPH 2006 Bokeh: Blur in out-of-focus regions of an image. Source: http://lullaby.homepage.dk/diy-camera/bokeh.html Questions? For next time: Read Szeliski, Chapter 3.-3.2 23