Recap from Monday Spectra and Color Light capture in cameras and humans.

Slides:



Advertisements
Similar presentations
Motion illusion, rotating snakes. Slide credit Fei Fei Li.
Advertisements

CS 691 Computational Photography Instructor: Gianfranco Doretto Frequency Domain.
15-463: Computational Photography Alexei Efros, CMU, Spring 2010 Most slides from Steve Marschner Sampling and Reconstruction.
Ted Adelson’s checkerboard illusion. Motion illusion, rotating snakes.
Computational Photography: Sampling + Reconstruction Connelly Barnes Slides from Alexei Efros and Steve Marschner.
Lecture 2: Filtering CS4670/5670: Computer Vision Kavita Bala.
First color film Captured by Edward Raymond Turner Predates Prokudin-Gorskii collection Like Prokudin-Gorskii, it was an additive 3-color system.
1 Image filtering Hybrid Images, Oliva et al.,
Convolution, Edge Detection, Sampling : Computational Photography Alexei Efros, CMU, Fall 2006 Some slides from Steve Seitz.
Lecture 1: Images and image filtering
1 Image Filtering Readings: Ch 5: 5.4, 5.5, 5.6,5.7.3, 5.8 (This lecture does not follow the book.) Images by Pawan SinhaPawan Sinha formal terminology.
Linear filtering. Overview: Linear filtering Linear filters Definition and properties Examples Gaussian smoothing Separability Applications Denoising.
1 Linear image transforms Let’s start with a 1-D image (a “signal”): A very general and useful class of transforms are the linear transforms of f, defined.
Announcements Kevin Matzen office hours – Tuesday 4-5pm, Thursday 2-3pm, Upson 317 TA: Yin Lou Course lab: Upson 317 – Card access will be setup soon Course.
15-463: Computational Photography Alexei Efros, CMU, Fall 2011 Many slides from Steve Marschner Sampling and Reconstruction.
1 Image filtering Images by Pawan SinhaPawan Sinha.
1 Image filtering
Convolution and Edge Detection : Computational Photography Alexei Efros, CMU, Fall 2005 Some slides from Steve Seitz.
Lecture 2: Image filtering
1 Images and Transformations Images by Pawan SinhaPawan Sinha.
Linear filtering.
1 Image filtering Hybrid Images, Oliva et al.,
Slides from Alexei Efros, Steve Marschner Filters & fourier theory.
1 Image Filtering Slides by Steve Seitz. 2 Salvador Dali, “Gala Contemplating the Mediterranean Sea, which at 30 meters becomes the portrait of Abraham.
Fourier Analysis : Rendering and Image Processing Alexei Efros.
Most slides from Steve Seitz
Advanced Computer Graphics CSE 190 [Spring 2015], Lecture 3 Ravi Ramamoorthi
Lecture 1: Images and image filtering CS4670/5670: Intro to Computer Vision Kavita Bala Hybrid Images, Oliva et al.,
Computational Photography lecture 5 – filtering and frequencies CS 590 Spring 2014 Prof. Alex Berg (Credits to many other folks on individual slides)
Applications of Image Filters Computer Vision CS 543 / ECE 549 University of Illinois Derek Hoiem 02/04/10.
Filtering Robert Lin April 29, Outline Why filter? Filtering for Graphics Sampling and Reconstruction Convolution The Fourier Transform Overview.
Lecture 4: Image Resampling and Reconstruction CS4670: Computer Vision Kavita Bala.
Lecture 3: Edge detection CS4670/5670: Computer Vision Kavita Bala From Sandlot ScienceSandlot Science.
09/19/2002 (C) University of Wisconsin 2002, CS 559 Last Time Color Quantization Dithering.
Image Filtering Computer Vision CS 543 / ECE 549 University of Illinois Derek Hoiem 02/02/10.
Why is computer vision difficult?
Linear filtering. Motivation: Noise reduction Given a camera and a still scene, how can you reduce noise? Take lots of images and average them! What’s.
Recap of Monday linear Filtering convolution differential filters filter types boundary conditions.
CS 691B Computational Photography
CSE 6367 Computer Vision Image Operations and Filtering “You cannot teach a man anything, you can only help him find it within himself.” ― Galileo GalileiGalileo.
CS559: Computer Graphics Lecture 3: Image Sampling and Filtering Li Zhang Spring 2010.
Lecture 3: Filtering and Edge detection
Reconnaissance d’objets et vision artificielle
Linear filtering. Motivation: Image denoising How can we reduce noise in a photograph?
Cornell CS465 Fall 2004 Lecture 5© 2004 Steve Marschner 1 Sampling and reconstruction CS 465 Lecture 5.
Last Lecture photomatix.com. Today Image Processing: from basic concepts to latest techniques Filtering Edge detection Re-sampling and aliasing Image.
CSE 185 Introduction to Computer Vision Image Filtering: Spatial Domain.
Grauman Today: Image Filters Smooth/Sharpen Images... Find edges... Find waldo…
Lecture 1: Images and image filtering CS4670/5670: Intro to Computer Vision Noah Snavely Hybrid Images, Oliva et al.,
CS 4501: Introduction to Computer Vision Filtering and Edge Detection
- photometric aspects of image formation gray level images
Correlation and Convolution They replace the value of an image pixel with a combination of its neighbors Basic operations in images Shift Invariant Linear.
Sampling and reconstruction
Linear Filters T-11 Computer Vision University of Houston
Lecture 1: Images and image filtering
Image filtering Hybrid Images, Oliva et al.,
Recap from Wednesday Spectra and Color Light capture in cameras and humans.
More Image Manipulation
Image filtering Images by Pawan Sinha.
Sampling and Reconstruction
Image filtering Images by Pawan Sinha.
Image filtering Images by Pawan Sinha.
Motion illusion, rotating snakes
Most slides from Steve Seitz
Image filtering Images by Pawan Sinha.
Image filtering
Image filtering
Lecture 1: Images and image filtering
Image Filtering Readings: Ch 5: 5. 4, 5. 5, 5. 6, , 5
Most slides from Steve Seitz
Presentation transcript:

Recap from Monday Spectra and Color Light capture in cameras and humans

Most slides from Alexei Efros and Steve Marschner Sampling and Reconstruction CS 195g: Computational Photography James Hays, Brown, Spring 2010

Sampling and Reconstruction

© 2006 Steve Marschner 4 Sampled representations How to store and compute with continuous functions? Common scheme for representation: samples –write down the function’s values at many points [FvDFH fig.14.14b / Wolberg]

© 2006 Steve Marschner 5 Reconstruction Making samples back into a continuous function –for output (need realizable method) –for analysis or processing (need mathematical method) –amounts to “guessing” what the function did in between [FvDFH fig.14.14b / Wolberg]

1D Example: Audio lowhigh frequencies

© 2006 Steve Marschner 7 Sampling in digital audio Recording: sound to analog to samples to disc Playback: disc to samples to analog to sound again –how can we be sure we are filling in the gaps correctly?

© 2006 Steve Marschner 8 Sampling and Reconstruction Simple example: a sine wave

© 2006 Steve Marschner 9 Undersampling What if we “missed” things between the samples? Simple example: undersampling a sine wave –unsurprising result: information is lost

© 2006 Steve Marschner 10 Undersampling What if we “missed” things between the samples? Simple example: undersampling a sine wave –unsurprising result: information is lost –surprising result: indistinguishable from lower frequency

© 2006 Steve Marschner 11 Undersampling What if we “missed” things between the samples? Simple example: undersampling a sine wave –unsurprising result: information is lost –surprising result: indistinguishable from lower frequency –also was always indistinguishable from higher frequencies –aliasing: signals “traveling in disguise” as other frequencies

Aliasing in video Slide by Steve Seitz

Aliasing in images

What’s happening? Input signal: x = 0:.05:5; imagesc(sin((2.^x).*x)) Plot as image: Alias! Not enough samples

Antialiasing What can we do about aliasing? Sample more often Join the Megapixel craze of the photo industry But that only shifts the problem to higher frequencies Make the signal less “wiggly” Get rid of some high frequencies Will lose information But it’s better than aliasing

© 2006 Steve Marschner 16 Preventing aliasing Introduce lowpass filters: –remove high frequencies leaving only safe, low frequencies –choose lowest frequency in reconstruction (disambiguate)

© 2006 Steve Marschner 17 Linear filtering: a key idea Transformations on signals; e.g.: –bass/treble controls on stereo –blurring/sharpening operations in image editing –smoothing/noise reduction in tracking Key properties –linearity: filter(f + g) = filter(f) + filter(g) –shift invariance: behavior invariant to shifting the input delaying an audio signal sliding an image around Can be modeled mathematically by convolution

© 2006 Steve Marschner 18 Moving Average basic idea: define a new function by averaging over a sliding window a simple example to start off: smoothing

© 2006 Steve Marschner 19 Weighted Moving Average Can add weights to our moving average Weights […, 0, 1, 1, 1, 1, 1, 0, …] / 5

© 2006 Steve Marschner 20 Weighted Moving Average bell curve (gaussian-like) weights […, 1, 4, 6, 4, 1, …]

© 2006 Steve Marschner 21 Moving Average In 2D What are the weights H? Slide by Steve Seitz

© 2006 Steve Marschner 22 Cross-correlation filtering Let’s write this down as an equation. Assume the averaging window is (2k+1)x(2k+1): We can generalize this idea by allowing different weights for different neighboring pixels: This is called a cross-correlation operation and written: H is called the “filter,” “kernel,” or “mask.” Slide by Steve Seitz

23 Gaussian filtering A Gaussian kernel gives less weight to pixels further from the center of the window This kernel is an approximation of a Gaussian function: Slide by Steve Seitz

24 Mean vs. Gaussian filtering Slide by Steve Seitz

Convolution cross-correlation: A convolution operation is a cross-correlation where the filter is flipped both horizontally and vertically before being applied to the image: It is written: Suppose H is a Gaussian or mean kernel. How does convolution differ from cross-correlation? Slide by Steve Seitz

© 2006 Steve Marschner 26 Convolution is nice! Notation: Convolution is a multiplication-like operation –commutative –associative –distributes over addition –scalars factor out –identity: unit impulse e = […, 0, 0, 1, 0, 0, …] Conceptually no distinction between filter and signal Usefulness of associativity –often apply several filters one after another: (((a * b 1 ) * b 2 ) * b 3 ) –this is equivalent to applying one filter: a * (b 1 * b 2 * b 3 )

Tricks with convolutions =