Image Pyramids and Applications

Slides:



Advertisements
Similar presentations
CSCE 643 Computer Vision: Template Matching, Image Pyramids and Denoising Jinxiang Chai.
Advertisements

Multiscale Analysis of Images Gilad Lerman Math 5467 (stealing slides from Gonzalez & Woods, and Efros)
CS 691 Computational Photography
Computational Photography CSE 590 Tamara Berg Filtering & Pyramids.
Templates, Image Pyramids, and Filter Banks Slides largely from Derek Hoeim, Univ. of Illinois.
Templates and Image Pyramids Computational Photography Derek Hoiem, University of Illinois 09/06/11.
Computer Graphics Recitation 6. 2 Motivation – Image compression What linear combination of 8x8 basis signals produces an 8x8 block in the image?
1 Audio Compression Techniques MUMT 611, January 2005 Assignment 2 Paul Kolesnik.
Computer Vision - A Modern Approach
Fractal Image Compression
Introduction to Computer Vision CS / ECE 181B Thursday, April 22, 2004  Edge detection (HO #5)  HW#3 due, next week  No office hours today.
Fourier Analysis Without Tears : Computational Photography Alexei Efros, CMU, Fall 2005 Somewhere in Cinque Terre, May 2005.
The Frequency Domain : Computational Photography Alexei Efros, CMU, Fall 2011 Somewhere in Cinque Terre, May 2005 Many slides borrowed from Steve.
Templates, Image Pyramids, and Filter Banks Computer Vision James Hays, Brown Slides: Hoiem and others.
The Frequency Domain : Computational Photography Alexei Efros, CMU, Fall 2008 Somewhere in Cinque Terre, May 2005 Many slides borrowed from Steve.
T.Sharon-A.Frank 1 Multimedia Image Compression 2 T.Sharon-A.Frank Coding Techniques – Hybrid.
Roger Cheng (JPEG slides courtesy of Brian Bailey) Spring 2007
1 JPEG Compression CSC361/661 Burg/Wong. 2 Fact about JPEG Compression JPEG stands for Joint Photographic Experts Group JPEG compression is used with.jpg.
Image Compression JPEG. Fact about JPEG Compression JPEG stands for Joint Photographic Experts Group JPEG compression is used with.jpg and can be embedded.
Trevor McCasland Arch Kelley.  Goal: reduce the size of stored files and data while retaining all necessary perceptual information  Used to create an.
ENG4BF3 Medical Image Processing
CSC589 Introduction to Computer Vision Lecture 9 Sampling, Gaussian Pyramid Bei Xiao.
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.
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 8 – JPEG Compression (Part 3) Klara Nahrstedt Spring 2012.
Templates, Image Pyramids, and Filter Banks Computer Vision Derek Hoiem, University of Illinois 01/31/12.
CS559: Computer Graphics Lecture 3: Digital Image Representation Li Zhang Spring 2008.
Klara Nahrstedt Spring 2011
Templates, Image Pyramids, and Filter Banks
Image Processing Xuejin Chen Ref:
DCT cs195g: Computational Photography James Hays, Brown, Spring 2010 Somewhere in Cinque Terre, May 2005 Slides from Alexei Efros.
Templates and Image Pyramids Computational Photography Derek Hoiem, University of Illinois 09/03/15.
Image Processing Edge detection Filtering: Noise suppresion.
Image Filtering Computer Vision CS 543 / ECE 549 University of Illinois Derek Hoiem 02/02/10.
Computer Vision Spring ,-685 Instructor: S. Narasimhan Wean 5403 T-R 3:00pm – 4:20pm.
G52IIP, School of Computer Science, University of Nottingham 1 G52IIP 2011 Summary Topic 1 Overview of the course Related topics Image processing Computer.
Digital Image Processing Lecture 21: Lossy Compression Prof. Charlene Tsai.
Templates, Image Pyramids, and Filter Banks
Recap of Monday linear Filtering convolution differential filters filter types boundary conditions.
Image as a linear combination of basis images
JPEG.
Introduction to JPEG m Akram Ben Ahmed
Computer vision. Applications and Algorithms in CV Tutorial 3: Multi scale signal representation Pyramids DFT - Discrete Fourier transform.
Last Lecture photomatix.com. Today Image Processing: from basic concepts to latest techniques Filtering Edge detection Re-sampling and aliasing Image.
Spatial Filtering (Chapter 3) CS474/674 - Prof. Bebis.
Masaki Hayashi 2015, Autumn Visualization with 3D CG Digital 2D Image Basic.
Prof. Adriana Kovashka University of Pittsburgh September 14, 2016
Sampling, Template Matching and Pyramids
JPEG Compression What is JPEG? Motivation
- photometric aspects of image formation gray level images
Digital Image Processing Lecture 21: Lossy Compression
A Simple Image Compression : JPEG
Digital 2D Image Basic Masaki Hayashi
Image Forgery JPEG Compression Based Forgery Detection
Computer Vision Jia-Bin Huang, Virginia Tech
The Frequency Domain : Computational Photography
Multiscale Analysis of Images
JPEG Image Compression
Sampling and Reconstruction
Motion illusion, rotating snakes
Lecture 5: Resampling, Compositing, and Filtering Li Zhang Spring 2008
JPEG Still Image Data Compression Standard
Fourier Analysis Without Tears
Govt. Polytechnic Dhangar(Fatehabad)
Edge Detection Today’s readings Cipolla and Gee Watt,
Topic 1 Three related sub-fields Image processing Computer vision
Lecture 1: Images and image filtering
Review and Importance CS 111.
Templates and Image Pyramids
Presentation transcript:

Image Pyramids and Applications Computer Vision Jia-Bin Huang, Virginia Tech Golconda, René Magritte, 1953

Administrative stuffs HW 1 will be posted tonight, due 11:59 PM Sept 25 Anonymous feedback

Previous class: Image Filtering Sometimes it makes sense to think of images and filtering in the frequency domain Fourier analysis Can be faster to filter using FFT for large images (N logN vs. N2 for auto-correlation) Images are mostly smooth Basis for compression Remember to low-pass before sampling

Spatial domain * = FFT FFT Inverse FFT = Frequency domain

Today’s class Template matching Image Pyramids Compression Introduction to HW1

Template matching Goal: find in image Main challenge: What is a good similarity or distance measure between two patches? D() , ) Correlation Zero-mean correlation Sum Square Difference Normalized Cross Correlation

Matching with filters Goal: find in image Method 0: filter the image with eye patch g = filter f = image Problem: response is stronger for higher intensity What went wrong? Input Filtered Image

Matching with filters Goal: find in image Method 1: filter the image with zero-mean eye mean of template g True detections Likes bright pixels where filters are above average, dark pixels where filters are below average. Problems: response is sensitive to gain/contrast, pixels in filter that are near the mean have little effect, does not require pixel values in image to be near or proportional to values in filter. False detections Input Filtered Image (scaled) Thresholded Image

Matching with filters Goal: find in image Method 2: Sum of squared differences (SSD) True detections Problem: SSD sensitive to average intensity Input 1- sqrt(SSD) Thresholded Image

Matching with filters Can SSD be implemented with linear filters? Constant Filtering with g Filtering with box filter

What’s the potential downside of SSD? Matching with filters Goal: find in image Method 2: SSD What’s the potential downside of SSD? Problem: SSD sensitive to average intensity Input 1- sqrt(SSD)

Matching with filters Goal: find in image Method 3: Normalized cross-correlation mean template mean image patch Invariant to mean and scale of intensity Matlab: normxcorr2(template, im)

Matching with filters Goal: find in image Method 3: Normalized cross-correlation True detections Input Thresholded Image Normalized X-Correlation

Matching with filters Goal: find in image Method 3: Normalized cross-correlation True detections Input Thresholded Image Normalized X-Correlation

Q: What is the best method to use? A: Depends Zero-mean filter: fastest but not a great matcher SSD: next fastest, sensitive to overall intensity Normalized cross-correlation: slowest, invariant to local average intensity and contrast

Q: What if we want to find larger or smaller eyes? A: Image Pyramid

Low-Pass Filtered Image Review of Sampling Gaussian Filter Sub-sample Image Low-Pass Filtered Image Low-Res Image

Gaussian pyramid Source: Forsyth

Template Matching with Image Pyramids Input: Image, Template Match template at current scale Downsample image In practice, scale step of 1.1 to 1.2 Repeat 1-2 until image is very small Take responses above some threshold, perhaps with non-maxima suppression

Laplacian filter unit impulse Gaussian Laplacian of Gaussian Source: Lazebnik

Laplacian pyramid Source: Forsyth

Creating the Gaussian/Laplacian Pyramid Image = G1 Smooth, then downsample G2 Downsample (Smooth(G1)) Downsample (Smooth(G2)) G3 … GN = LN G1 - Smooth(Upsample(G2)) L1 L2 L3 G3 - Smooth(Upsample(G4)) G2 - Smooth(Upsample(G3)) Use same filter for smoothing in each step (e.g., Gaussian with 𝜎=2) Downsample/upsample with “nearest” interpolation

Hybrid Image in Laplacian Pyramid High frequency  Low frequency

Reconstructing image from Laplacian pyramid L1 + Smooth(Upsample(G2)) G2 = L2 + Smooth(Upsample(G3)) G3 = L3 + Smooth(Upsample(L4)) L4 L1 L2 L3 Use same filter for smoothing as in desconstruction Upsample with “nearest” interpolation Reconstruction will be lossless

Major uses of image pyramids Object detection Scale search Features Detecting stable interest points Course-to-fine registration Compression

Coarse-to-fine Image Registration Compute Gaussian pyramid Align with coarse pyramid Successively align with finer pyramids Search smaller range Why is this faster? Are we guaranteed to get the same result?

Applications: Pyramid Blending

Applications: Pyramid Blending

Pyramid Blending At low frequencies, blend slowly At high frequencies, blend quickly 1 1 1 Left pyramid Right pyramid blend

Image representation Pixels: great for spatial resolution, poor access to frequency Fourier transform: great for frequency, not for spatial info Pyramids/filter banks: balance between spatial and frequency information

Compression How is it that a 4MP image (12000KB) can be compressed to 400KB without a noticeable change?

Lossy Image Compression (JPEG) Block-based Discrete Cosine Transform (DCT) Slides: Efros

Using DCT in JPEG The first coefficient B(0,0) is the DC component, the average intensity The top-left coeffs represent low frequencies, the bottom right – high frequencies

Image compression using DCT Quantize More coarsely for high frequencies (which also tend to have smaller values) Many quantized high frequency values will be zero Encode Can decode with inverse dct Filter responses Quantization table Quantized values

JPEG Compression Summary Convert image to YCrCb Subsample color by factor of 2 People have bad resolution for color Split into blocks (8x8, typically), subtract 128 For each block Compute DCT coefficients Coarsely quantize Many high frequency components will become zero Encode (e.g., with Huffman coding) http://en.wikipedia.org/wiki/YCbCr http://en.wikipedia.org/wiki/JPEG

Lossless compression (PNG) Predict that a pixel’s value based on its upper-left neighborhood Store difference of predicted and actual value Pkzip it (DEFLATE algorithm)

Three views of image filtering Image filters in spatial domain Filter is a mathematical operation on values of each patch Smoothing, sharpening, measuring texture Image filters in the frequency domain Filtering is a way to modify the frequencies of images Denoising, sampling, image compression Templates and Image Pyramids Filtering is a way to match a template to the image Detection, coarse-to-fine registration

HW 1 – Hybrid Image Hybrid image = Low-Freq( Image A ) + Hi-Freq( Image B )

HW 1 – Image Pyramid

HW 1 – Edge Detection Derivative of Gaussian filters x-direction y-direction Derivative of Gaussian filters

Things to remember Template matching (SSD or Normxcorr2) SSD can be done with linear filters, is sensitive to overall intensity Gaussian pyramid Coarse-to-fine search, multi-scale detection Laplacian pyramid More compact image representation Can be used for compositing in graphics Compression In JPEG, coarsely quantize high frequencies

Thank you See you this Thursday Next class: Edge detection