Recap of friday
Sponsored Links
This presentation is the property of its rightful owner.
1 / 50

Recap of Friday PowerPoint PPT Presentation


  • 92 Views
  • Uploaded on
  • Presentation posted in: General

Recap of Friday. linear Filtering convolution differential filters filter types boundary conditions. Review: questions. Write down a 3x3 filter that returns a positive value if the average value of the 4-adjacent neighbors is less than the center and a negative value otherwise

Download Presentation

Recap of Friday

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Recap of Friday

linear Filtering

convolution

differential filters

filter types

boundary conditions.


Review: questions

  • Write down a 3x3 filter that returns a positive value if the average value of the 4-adjacent neighbors is less than the center and a negative value otherwise

  • Write down a filter that will compute the gradient in the x-direction:

  • gradx(y,x) = im(y,x+1)-im(y,x) for each x, y

Slide: Hoiem


Review: questions

Filtering Operator

a) _ = D * B

b) A = _ * _

c) F = D * _

d) _ = D * D

  • 3. Fill in the blanks:

A

B

E

G

C

F

D

H

I

Slide: Hoiem


The Frequency Domain (Szeliski 3.4)

Somewhere in Cinque Terre, May 2005

CS129: Computational Photography

James Hays, Brown, Spring 2011

Slides from Steve Seitzand Alexei Efros


Salvador Dali

“Gala Contemplating the Mediterranean Sea,

which at 30 meters becomes the portrait

of Abraham Lincoln”, 1976

Salvador Dali, “Gala Contemplating the Mediterranean Sea, which at 30 meters becomes the portrait of Abraham Lincoln”, 1976

Salvador Dali, “Gala Contemplating the Mediterranean Sea, which at 30 meters becomes the portrait of Abraham Lincoln”, 1976


A nice set of basis

Teases away fast vs. slow changes in the image.

This change of basis has a special name…


Jean Baptiste Joseph Fourier (1768-1830)

  • had crazy idea (1807):

  • Any periodic function can be rewritten as a weighted sum of sines and cosines of different frequencies.

  • Don’t believe it?

    • Neither did Lagrange, Laplace, Poisson and other big wigs

    • Not translated into English until 1878!

  • But it’s true!

    • called Fourier Series


A sum of sines

  • Our building block:

  • Add enough of them to get any signal f(x) you want!

  • How many degrees of freedom?

  • What does each control?

  • Which one encodes the coarse vs. fine structure of the signal?


Inverse Fourier

Transform

Fourier

Transform

F(w)

f(x)

F(w)

f(x)

Fourier Transform

  • We want to understand the frequency w of our signal. So, let’s reparametrize the signal by w instead of x:

  • For every w from 0 to inf, F(w) holds the amplitude A and phase f of the corresponding sine

    • How can F hold both? Using complex numbers.

We can always go back:


Time and Frequency

  • example : g(t) = sin(2pf t) + (1/3)sin(2p(3f) t)


Time and Frequency

  • example : g(t) = sin(2pf t) + (1/3)sin(2p(3f) t)

=

+


Frequency Spectra

  • example : g(t) = sin(2pf t) + (1/3)sin(2p(3f) t)

=

+


Frequency Spectra

  • Usually, frequency is more interesting than the phase


Frequency Spectra

=

+

=


Frequency Spectra

=

+

=


Frequency Spectra

=

+

=


Frequency Spectra

=

+

=


Frequency Spectra

=

+

=


Frequency Spectra

=


Frequency Spectra


Extension to 2D

in Matlab, check out: imagesc(log(abs(fftshift(fft2(im)))));


Man-made Scene


Can change spectrum, then reconstruct


Low and High Pass filtering


The Fourier transform of the convolution of two functions is the product of their Fourier transforms

Convolution in spatial domain is equivalent to multiplication in frequency domain!

The Convolution Theorem


2D convolution theorem example

|F(sx,sy)|

f(x,y)

*

h(x,y)

|H(sx,sy)|

g(x,y)

|G(sx,sy)|


Filtering in frequency domain

FFT

FFT

=

Inverse FFT

Slide: Hoiem


FFT in Matlab

  • Filtering with fft

  • Displaying with fft

im = double(imread(‘…'))/255;

im = rgb2gray(im); % “im” should be a gray-scale floating point image

[imh, imw] = size(im);

hs = 50; % filter half-size

fil = fspecial('gaussian', hs*2+1, 10);

fftsize = 1024; % should be order of 2 (for speed) and include padding

im_fft = fft2(im, fftsize, fftsize); % 1) fft im with padding

fil_fft = fft2(fil, fftsize, fftsize); % 2) fft fil, pad to same size as image

im_fil_fft = im_fft .* fil_fft; % 3) multiply fft images

im_fil = ifft2(im_fil_fft); % 4) inverse fft2

im_fil = im_fil(1+hs:size(im,1)+hs, 1+hs:size(im, 2)+hs); % 5) remove padding

figure(1), imagesc(log(abs(fftshift(im_fft)))), axis image, colormap jet

Slide: Hoiem


Fourier Transform pairs


Low-pass, Band-pass, High-pass filters

low-pass:

High-pass / band-pass:


Edges in images


What does blurring take away?

original


What does blurring take away?

smoothed (5x5 Gaussian)


High-Pass filter

smoothed – original


  • The gradient direction is given by:

    • how does this relate to the direction of the edge?

  • The edge strength is given by the gradient magnitude

Image gradient

  • The gradient of an image:

  • The gradient points in the direction of most rapid change in intensity


Effects of noise

  • Consider a single row or column of the image

    • Plotting intensity as a function of position gives a signal

How to compute a derivative?

Where is the edge?


Look for peaks in

Solution: smooth first

Where is the edge?


Derivative theorem of convolution

  • This saves us one operation:


Laplacian of Gaussian

is the Laplacian operator:

2D edge detection filters

Gaussian

derivative of Gaussian


Campbell-Robson contrast sensitivity curve


Depends on Color

R

G

B


Lossy Image Compression (JPEG)

Block-based Discrete Cosine Transform (DCT)


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

  • DCT enables image compression by concentrating most image information in the low frequencies

  • Lose unimportant image info (high frequencies) by cutting B(u,v) at bottom right

  • The decoder computes the inverse DCT – IDCT

  • Quantization Table

  • 3 5 7 9 11 13 15 17

  • 5 7 9 11 13 15 17 19

  • 7 9 11 13 15 17 19 21

  • 9 11 13 15 17 19 21 23

  • 11 13 15 17 19 21 23 25

  • 13 15 17 19 21 23 25 27

  • 15 17 19 21 23 25 27 29

  • 17 19 21 23 25 27 29 31


JPEG compression comparison

89k

12k


Things to Remember

  • 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


Summary

Frequency domain can be useful for

Analysis

Computational efficiency

Compression


  • Login