Image Resampling CS4670: Computer Vision Noah Snavely.

Slides:



Advertisements
Similar presentations
Multiscale Analysis of Images Gilad Lerman Math 5467 (stealing slides from Gonzalez & Woods, and Efros)
Advertisements

Image Interpolation CS4670: Computer Vision Noah Snavely.
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.
Slides from Alexei Efros
CS 691 Computational Photography
Computational Photography: Sampling + Reconstruction Connelly Barnes Slides from Alexei Efros and Steve Marschner.
Linear Filtering – Part II Selim Aksoy Department of Computer Engineering Bilkent University
Computational Photography CSE 590 Tamara Berg Filtering & Pyramids.
Filtering CSE P 576 Larry Zitnick
Sampling, Aliasing, & Mipmaps
Image Filtering, Part 2: Resampling Today’s readings Forsyth & Ponce, chapters Forsyth & Ponce –
Convolution, Edge Detection, Sampling : Computational Photography Alexei Efros, CMU, Fall 2006 Some slides from Steve Seitz.
CSCE 641 Computer Graphics: Image Sampling and Reconstruction Jinxiang Chai.
Sampling and Pyramids : Rendering and Image Processing Alexei Efros …with lots of slides from Steve Seitz.
Edges and Scale Today’s reading Cipolla & Gee on edge detection (available online)Cipolla & Gee on edge detection Szeliski – From Sandlot ScienceSandlot.
Lecture 2: Edge detection and resampling
Image transformations, Part 2 Prof. Noah Snavely CS1114
CSCE 641 Computer Graphics: Image Sampling and Reconstruction Jinxiang Chai.
Image Sampling Moire patterns
Lecture 3: Edge detection, continued
CSCE 641 Computer Graphics: Fourier Transform Jinxiang Chai.
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.
Lecture 4: Image Resampling CS4670: Computer Vision Noah Snavely.
Lecture 3: Image Resampling CS4670: Computer Vision Noah Snavely Nearest-neighbor interpolation Input image 3x upsample hq3x interpolation (ZSNES)
CPSC 641 Computer Graphics: Fourier Transform Jinxiang Chai.
Computational Photography: Fourier Transform Jinxiang Chai.
Slides from Alexei Efros, Steve Marschner Filters & fourier theory.
Image Sampling Moire patterns -
Fourier Analysis : Rendering and Image Processing Alexei Efros.
Recap from Friday Pinhole camera model Perspective projections Lenses and their flaws Focus Depth of field Focal length and field of view.
Image Sampling CSE 455 Ali Farhadi Many slides from Steve Seitz and Larry Zitnick.
Computer Vision Spring ,-685 Instructor: S. Narasimhan Wean 5409 T-R 10:30am – 11:50am.
Applications of Image Filters Computer Vision CS 543 / ECE 549 University of Illinois Derek Hoiem 02/04/10.
Image Resampling CS4670: Computer Vision Noah Snavely.
Image Processing Xuejin Chen Ref:
Lecture 4: Image Resampling and Reconstruction CS4670: Computer Vision Kavita Bala.
Image Processing Edge detection Filtering: Noise suppresion.
Lecture 3: Edge detection CS4670/5670: Computer Vision Kavita Bala From Sandlot ScienceSandlot Science.
Image Processing Basics. What are images? An image is a 2-d rectilinear array of pixels.
Computer Vision Spring ,-685 Instructor: S. Narasimhan Wean 5403 T-R 3:00pm – 4:20pm.
CS559: Computer Graphics Lecture 4: Compositing and Resampling Li Zhang Spring 2008.
Lecture 5: Image Interpolation and Features
Brent M. Dingle, Ph.D Game Design and Development Program Mathematics, Statistics and Computer Science University of Wisconsin - Stout Image Processing.
Lecture 5: Fourier and Pyramids
Projects Project 1a due this Friday Project 1b will go out on Friday to be done in pairs start looking for a partner now.
Last Lecture photomatix.com. Today Image Processing: from basic concepts to latest techniques Filtering Edge detection Re-sampling and aliasing Image.
Recall: Gaussian smoothing/sampling G 1/4 G 1/8 Gaussian 1/2 Solution: filter the image, then subsample Filter size should double for each ½ size reduction.
Antialiasing. What is alias? Alias - A false signal in telecommunication links from beats between signal frequency and sampling frequency (from dictionary.com)
Image Resampling & Interpolation
Many slides from Steve Seitz and Larry Zitnick
Image Sampling Moire patterns
Image transformations
Gonzalez & Woods, and Efros)
Image transformations
Image Sampling Moire patterns
Jeremy Bolton, PhD Assistant Teaching Professor
Multiscale Analysis of Images
More Image Manipulation
CSCE 643 Computer Vision: Thinking in Frequency
Samuel Cheng Slide credits: Noah Snavely
Image Processing Today’s readings For Monday
Filtering Part 2: Image Sampling
Linear filtering.
Image Sampling Moire patterns
Lecture 5: Resampling, Compositing, and Filtering Li Zhang Spring 2008
Oh, no, wait, sorry, I meant, welcome to the implementation of 20th-century science fiction literature, or a small part of it, where we will learn about.
Image Resampling & Interpolation
Resampling.
Samuel Cheng Slide credits: Noah Snavely
Presentation transcript:

Image Resampling CS4670: Computer Vision Noah Snavely

Announcements Daniel’s office hours: Tuesday 4:30 to 5:30 Thursday 1:05 to 2:05 Location: Upson 317 (Robot Teaching Lab)

From last time (with demo!)

Other notes on Project 1 We will deal with images stored as matrices in C++ – And we will store matrices as arrays In row major order RGB values are packed together To filter an RGB image, you will filter each color channel separately

Image Scaling This image is too big to fit on the screen. How can we generate a half-sized version? Source: S. Seitz

Image sub-sampling Throw away every other row and column to create a 1/2 size image - called image sub-sampling 1/4 1/8 Source: S. Seitz

Image sub-sampling 1/4 (2x zoom) 1/8 (4x zoom) Why does this look so crufty? 1/2 Source: S. Seitz

Image sub-sampling Source: F. Durand

Even worse for synthetic images Source: L. Zhang

Aliasing Occurs when your sampling rate is not high enough to capture the amount of detail in your image Can give you the wrong signal/image—an alias To do sampling right, need to understand the structure of your signal/image Enter Monsieur Fourier… To avoid aliasing: – sampling rate ≥ 2 * max frequency in the image said another way: ≥ two samples per cycle – This minimum sampling rate is called the Nyquist rate Source: L. Zhang

Wagon-wheel effect (See Source: L. Zhang

Nyquist limit – 2D example Good sampling Bad sampling

Aliasing When downsampling by a factor of two – Original image has frequencies that are too high How can we fix this?

Gaussian pre-filtering G 1/4 G 1/8 Gaussian 1/2 Solution: filter the image, then subsample Source: S. Seitz

Subsampling with Gaussian pre-filtering G 1/4G 1/8Gaussian 1/2 Solution: filter the image, then subsample Source: S. Seitz

Compare with... 1/4 (2x zoom) 1/8 (4x zoom) 1/2 Source: S. Seitz

Gaussian pre-filtering Solution: filter the image, then subsample blur F 0 H * * subsample blur subsample … F1F1 F1F1 F 1 H * * F2F2 F2F2 F0F0 F0F0

blur F 0 H * * subsample blur subsample … F1F1 F1F1 F 1 H * * F2F2 F2F2 F0F0 F0F0 { Gaussian pyramid

Gaussian pyramids [Burt and Adelson, 1983] In computer graphics, a mip map [Williams, 1983] A precursor to wavelet transform Gaussian Pyramids have all sorts of applications in computer vision Source: S. Seitz

Gaussian pyramids [Burt and Adelson, 1983] How much space does a Gaussian pyramid take compared to the original image? Source: S. Seitz

Gaussian Pyramid

Questions?

Upsampling This image is too small for this screen: How can we make it 10 times as big? Simplest approach: repeat each row and column 10 times (“Nearest neighbor interpolation”)

Image interpolation Recall how a digital image is formed It is a discrete point-sampling of a continuous function If we could somehow reconstruct the original function, any new image could be generated, at any resolution and scale Adapted from: S. Seitz d = 1 in this example

Image interpolation d = 1 in this example Recall how a digital image is formed It is a discrete point-sampling of a continuous function If we could somehow reconstruct the original function, any new image could be generated, at any resolution and scale Adapted from: S. Seitz

Image interpolation Convert to a continuous function: Reconstruct by convolution with a reconstruction filter, h What if we don’t know ? Guess an approximation: Can be done in a principled way: filtering d = 1 in this example Adapted from: S. Seitz

Image interpolation “Ideal” reconstruction Nearest-neighbor interpolation Linear interpolation Gaussian reconstruction Source: B. Curless

Reconstruction filters What does the 2D version of this hat function look like? Often implemented without cross-correlation E.g., Better filters give better resampled images Bicubic is common choice performs linear interpolation (tent function) performs bilinear interpolation Cubic reconstruction filter

Image interpolation Nearest-neighbor interpolationBilinear interpolationBicubic interpolation Original image: x 10

Image interpolation Also used for resampling

Questions?