+ All Categories
Home > Documents > Signal reconstruction from multiscale edges

Signal reconstruction from multiscale edges

Date post: 05-Jan-2016
Category:
Upload: laird
View: 25 times
Download: 1 times
Share this document with a friend
Description:
Signal reconstruction from multiscale edges. A wavelet based algorithm. Author Yen-Ming Mark Lai ( [email protected] ) Advisor Dr. Radu Balan [email protected] CSCAMM, MATH. Reference. “Characterization of Signals from Multiscale Edges” Stephane Mallat and Sifen Zhong - PowerPoint PPT Presentation
139
Signal reconstruction from multiscale edges A wavelet based algorithm
Transcript
Page 1: Signal reconstruction from multiscale edges

Signal reconstruction from multiscale edges

A wavelet based algorithm

Page 2: Signal reconstruction from multiscale edges

Author

Yen-Ming Mark Lai

([email protected])

Advisor

Dr. Radu Balan

[email protected]

CSCAMM, MATH

Page 3: Signal reconstruction from multiscale edges

Reference

• “Characterization of Signals from Multiscale Edges”

• Stephane Mallat and Sifen Zhong

• IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 14, pp 710-732, July 1992

Page 4: Signal reconstruction from multiscale edges

Motivation

Page 5: Signal reconstruction from multiscale edges

Input Signal (256 points)

Which points to save?

Page 6: Signal reconstruction from multiscale edges

Compressed Signal (37 points)

What else for reconstruction?

Page 7: Signal reconstruction from multiscale edges

Compressed Signal (37 points)

sharp one-sided edge

Page 8: Signal reconstruction from multiscale edges

Compressed Signal (37 points)

sharp two-sided edge

Page 9: Signal reconstruction from multiscale edges

Compressed Signal (37 points)

“noisy” edges

Page 10: Signal reconstruction from multiscale edges

Calculation

Reconstruction:

• edges

• edge type information

Original: (256 points)

(37 points)

(x points)

Page 11: Signal reconstruction from multiscale edges

37

Compression

edges edge type

+ x < 256

Page 12: Signal reconstruction from multiscale edges

Summary

Save edges

Page 13: Signal reconstruction from multiscale edges

Summary

Save edge type

sharp one-sided edge

sharp two-sided edge

“noisy” edges

Page 14: Signal reconstruction from multiscale edges

Summary

edges edge type reconstruct+ =

Page 15: Signal reconstruction from multiscale edges

Algorithm

Decomposition + Reconstruction

Page 16: Signal reconstruction from multiscale edges

Decomposition

Discrete Wavelet

Transform

Save edges e.g. local extrema

Input

“edges+edge type”

Page 17: Signal reconstruction from multiscale edges

Reconstruction

Find approximation

Inverse Wavelet

Transform

Output

local extrema “edges+edge type”

Page 18: Signal reconstruction from multiscale edges

What is Discrete Wavelet Transform?

Discrete Wavelet

Transform

Input

Page 19: Signal reconstruction from multiscale edges

What is DWT?

1) Choose mother wavelet

2) Dilate mother wavelet

3) Convolve family with input

DWT

Page 20: Signal reconstruction from multiscale edges

1) Choose mother wavelet

Page 21: Signal reconstruction from multiscale edges

2) Dilate mother waveletmother wavelet

dilate

Page 22: Signal reconstruction from multiscale edges

2) Dilate mother wavelet

Page 23: Signal reconstruction from multiscale edges

Convolve family with input

input

input

input

wavelet scale 1

wavelet scale 2

wavelet scale 4

=

=

=

Page 24: Signal reconstruction from multiscale edges

Convolve “family”

input

input

input

wavelet scale 1

wavelet scale 2

wavelet scale 4

=

=

=

DWT

multiscale

Page 25: Signal reconstruction from multiscale edges

What is DWT?

(mathematically)

Page 26: Signal reconstruction from multiscale edges

How to dilate?

)2(

2

1)(

2 jj

xxj

mother wavelet

Page 27: Signal reconstruction from multiscale edges

How to dilate?

)2(

2

1)(

2 jj

xxj

dyadic (powers of two)

Page 28: Signal reconstruction from multiscale edges

How to dilate?

)2(

2

1)(

2 jj

xxj

scale

Page 29: Signal reconstruction from multiscale edges

How to dilate?

)2(

2

1)(

2 jj

xxj z

halve amplitude

double support

Page 30: Signal reconstruction from multiscale edges

Mother Wavelet (Haar)scale 1, j=0

Page 31: Signal reconstruction from multiscale edges

Mother Wavelet (Haar)

scale 2, j=1

Page 32: Signal reconstruction from multiscale edges

Mother Wavelet (Haar)

scale 4, j=2

Page 33: Signal reconstruction from multiscale edges

What is DWT?

Convolution of dilates of mother wavelets against original signal.

)()2(

2

1)()(

2xf

xxfx

jjj

Page 34: Signal reconstruction from multiscale edges

What is DWT?

Convolution of dilates of mother wavelets against original signal.

)()2(

2

1)()(

2xf

xxfx

jjj

convolution

Page 35: Signal reconstruction from multiscale edges

What is DWT?

Convolution of dilates of mother wavelets against original signal.

)()2(

2

1)()(

2xf

xxfx

jjj

dilates

Page 36: Signal reconstruction from multiscale edges

What is DWT?

Convolution of dilates of mother wavelets against original signal.

)()2(

2

1)()(

2xf

xxfx

jjj

original signal

Page 37: Signal reconstruction from multiscale edges

What is convolution?(best match operation)

Discrete Wavelet

Transform

Input1)mother wavelet

2)dilation

3)convolution

Page 38: Signal reconstruction from multiscale edges

Convolution (best match operator)

dtgftgf )()()(

dummy variable

Page 39: Signal reconstruction from multiscale edges

Convolution (best match operator)

flip g around y axis

dtgftgf )()()(

Page 40: Signal reconstruction from multiscale edges

dtgftgf )()()(

Convolution (best match operator)

shifts g by t

Page 41: Signal reconstruction from multiscale edges

dtgftgf )()()(

do nothing to f

Convolution (best match operator)

Page 42: Signal reconstruction from multiscale edges

dtgftgf )()()(

Convolution (best match operator)

pointwise multiplication

Page 43: Signal reconstruction from multiscale edges

dtgftgf )()()(

Convolution (best match operator)

integrate over R

Page 44: Signal reconstruction from multiscale edges

)7.7(gf

flip g and shift by 7.7

dgf )7.7()(

Convolution (one point)

Page 45: Signal reconstruction from multiscale edges

)7.7(gf

do nothing to f

dgf )7.7()(

Convolution (one point)

Page 46: Signal reconstruction from multiscale edges

)7.7(gf

multiply f and g pointwise

dgf )7.7()(

Convolution (one point)

Page 47: Signal reconstruction from multiscale edges

)7.7(gf

integrate over R

dgf )7.7()(

Convolution (one point)

Page 48: Signal reconstruction from multiscale edges

)7.7(gf

Convolution (one point)

scalar

Page 49: Signal reconstruction from multiscale edges

Convolution of two boxes

f

Page 50: Signal reconstruction from multiscale edges

Convolution of two boxes

45.1g

Page 51: Signal reconstruction from multiscale edges

Convolution of two boxes

45.1t

Page 52: Signal reconstruction from multiscale edges

Convolution of two boxes

dgfgf )45.1()()45.1( 0

Page 53: Signal reconstruction from multiscale edges

Convolution of two boxes

f

Page 54: Signal reconstruction from multiscale edges

Convolution of two boxes

5.0g

Page 55: Signal reconstruction from multiscale edges

Convolution of two boxes

5.0t

Page 56: Signal reconstruction from multiscale edges

Convolution of two boxes

dgfgf )5.0()()5.0( 5.0

Page 57: Signal reconstruction from multiscale edges

Convolution of two boxes

Page 58: Signal reconstruction from multiscale edges

Convolution of two boxes

gf

Page 59: Signal reconstruction from multiscale edges

Why convolution?

Location of maximum best fit

Page 60: Signal reconstruction from multiscale edges

Where does red box most look like blue box?

Page 61: Signal reconstruction from multiscale edges

Why convolution?

Location of maximum best fit

maximum

Page 62: Signal reconstruction from multiscale edges

Why convolution?

Location of maximum best fit

maxima best fit location

Page 63: Signal reconstruction from multiscale edges

Where does exponential most look like box?

Page 64: Signal reconstruction from multiscale edges

Where does exponential most look like box?

Page 65: Signal reconstruction from multiscale edges

Where does exponential most look like box?

maximum

Page 66: Signal reconstruction from multiscale edges

Where does exponential most look like box?

maximum best fit location

Page 67: Signal reconstruction from multiscale edges

So what?

If wavelet is an edge, convolution detects location of edges

Page 68: Signal reconstruction from multiscale edges

Mother Wavelet (Haar)

Page 69: Signal reconstruction from multiscale edges

Mother Wavelet (Haar)

Page 70: Signal reconstruction from multiscale edges

Mother Wavelet (Haar)

Page 71: Signal reconstruction from multiscale edges

What is edge?

Local extrema of wavelet transform

Page 72: Signal reconstruction from multiscale edges

Summary of Decomposition

Discrete Wavelet

Transform

Save “edges” e.g. local extrema

Input

“edges+edge type”

Page 73: Signal reconstruction from multiscale edges

Summary of Decomposition

input

input

input

edge detection (scale 1)

edge detection (scale 2)

edge detection (scale 4)

=

=

=

Page 74: Signal reconstruction from multiscale edges

How to find approximation?

Find approximation

local extrema“edges+edge type”

Page 75: Signal reconstruction from multiscale edges

Find approximation (iterative)

Alternate projections between two spaces

Page 76: Signal reconstruction from multiscale edges

Find approximation (iterative)

2'2

22:LnLnn ffnf

Page 77: Signal reconstruction from multiscale edges

Find approximation (iterative)

2'2

22:LnLnn ffnf

H_1 Sobolev Norm

Page 78: Signal reconstruction from multiscale edges

Find approximation (iterative)

functions that interpolate given local maxima points

Page 79: Signal reconstruction from multiscale edges

Find approximation (iterative)

dyadic wavelet transforms of L^2 functions

Page 80: Signal reconstruction from multiscale edges

Find approximation (iterative)

intersection = space of solutions

Page 81: Signal reconstruction from multiscale edges

Find approximation (iterative)

Start at zero element to minimize solution’s norm

Page 82: Signal reconstruction from multiscale edges

Q: Why minimize over K?

A: Interpolation points act like local extrema

2'2

22:LnLnn ffnf

Page 83: Signal reconstruction from multiscale edges

Reconstruction

Find approximation(minimization

problem)

Inverse Wavelet

Transform

Output

Page 84: Signal reconstruction from multiscale edges

Example

Input of 256 points

Page 85: Signal reconstruction from multiscale edges

Input Signal (256 points)

Page 86: Signal reconstruction from multiscale edges

Input Signal (256 points)

major edges

Page 87: Signal reconstruction from multiscale edges

Input Signal (256 points)

minor edges (many)

Page 88: Signal reconstruction from multiscale edges

Discrete Wavelet Transform

fW dj2

Dyadic (powers of 2)

= DWT of “f” at scale 2^j

Page 89: Signal reconstruction from multiscale edges

DWT (9 scales, 256 points each)

Page 90: Signal reconstruction from multiscale edges

DWT (9 scales, 256 points each)

major edges

Page 91: Signal reconstruction from multiscale edges

Input Signal (256 points)

major edges

Page 92: Signal reconstruction from multiscale edges

DWT (9 scales, 256 points each)

minor edges (many)

Page 93: Signal reconstruction from multiscale edges

Input Signal (256 points)

minor edges (many)

Page 94: Signal reconstruction from multiscale edges

Decomposition

Discrete Wavelet

Transform

Save “edges” e.g. local extrema

Input

Page 95: Signal reconstruction from multiscale edges

DWT (9 scales, 256 points each)

Page 96: Signal reconstruction from multiscale edges

Save Local Maxima

Page 97: Signal reconstruction from multiscale edges

Local Maxima of Transform

Page 98: Signal reconstruction from multiscale edges

Local Maxima of Transform

low scale most sensitive

Page 99: Signal reconstruction from multiscale edges

Mother Wavelet (Haar)

Page 100: Signal reconstruction from multiscale edges

Local Maxima of Transform

high scale least sensitive

Page 101: Signal reconstruction from multiscale edges

Mother Wavelet (Haar)

Page 102: Signal reconstruction from multiscale edges

Decomposition

Discrete Wavelet

Transform

Save “edges” e.g. local extrema

Input

Page 103: Signal reconstruction from multiscale edges

Local Maxima of Transform

Page 104: Signal reconstruction from multiscale edges

Find approximation (iterative)

Alternate projections between two spaces

Page 105: Signal reconstruction from multiscale edges

Reconstruction

Find approximation(minimization

problem)

Inverse Wavelet

Transform

Output

Page 106: Signal reconstruction from multiscale edges

Mallat’s Reconstruction (20 iterations)

Page 107: Signal reconstruction from multiscale edges

original

reconstruction (20 iterations)

Page 108: Signal reconstruction from multiscale edges

Implementation

Language: MATLAB – Matlab wavelet toolbox

Complexity: convergence criteria

Page 109: Signal reconstruction from multiscale edges

Databases

• Baseline signals

– sinusoids, Gaussians, step edges, Diracs

• Audio signals

Page 110: Signal reconstruction from multiscale edges

Validation

• Unit testing of components

– DWT/IDWT

– Local extrema search

– Projection onto interpolation space (\Gamma)

Page 111: Signal reconstruction from multiscale edges

Testing

• L2 norm of the error (sum of squares)

versus iterations

• Saturation point in iteration (knee)

Page 112: Signal reconstruction from multiscale edges

Schedule (Coding)

• October/November – code Alternate

Projections (8 weeks)

• December – write up mid-year report (2

weeks)

• January – code local extrema search (1

week)

Page 113: Signal reconstruction from multiscale edges

Schedule (Testing)

• February/March – test and debug entire

system (8 weeks)

• April – run code against database (4

weeks)

• May – write up final report (2 weeks)

Page 114: Signal reconstruction from multiscale edges

Milestones

• December 1, 2010 – Alternate Projections

code passes unit test

• February 1, 2011 – local extrema search

code passes unit test

• April 1, 2011 - codes passes system test

Page 115: Signal reconstruction from multiscale edges

Deliverables

• Documented MATLAB code

• Testing results (reproducible)

• Mid-year report/Final report

Page 116: Signal reconstruction from multiscale edges

Summary

Discrete Wavelet

Transform

Save edges e.g. local extrema

Input

Find approximation

Inverse Wavelet

TransformOutput

Questions?

Page 117: Signal reconstruction from multiscale edges

Supplemental Slides

Page 118: Signal reconstruction from multiscale edges

Similar Idea to JPEG

• Discrete Fourier Transform

• Save largest coefficients

• Inverse Discrete Fourier Transform

Page 119: Signal reconstruction from multiscale edges

Comparison of algorithms

• DFT

• Save largest coefficients

• IDFT

• DWT (Redundant)

• Save local maxima on each scale

• Find approximation

• IDWT

Page 120: Signal reconstruction from multiscale edges

Problem Definition

• Given:– positions– values

of local maxima of |W_2^j f(x)| at each scale

• Find:– Approximation h(x) of f(x)– or equivalently W_{2^j} h(x)

Page 121: Signal reconstruction from multiscale edges

Maxima Constraint I

At each scale 2^j, for each local maximum located at x_n^j,

e.g. W h(x) = W f(x) at given set of local maxima points (interpolation problem) at each scale

)()(22

jn

jn xfWxhW jj

Page 122: Signal reconstruction from multiscale edges

Maxima Constraint II

At each scale 2^j, the local maxima of |W_2^j h(x)| are located at the abscissa (x_n^j)_n \in Z

e.g Local maxima of |W h(x)| are local maxima of |W f(x)| at each scale

Page 123: Signal reconstruction from multiscale edges

Maxima Constraint II

• Constraint not convex (difficult to analyze)

• Use convex constraint instead:

local maxima of |W h(x)| at certain points

|W h(x)|^2 and |d W h(x)|^2 small as possible on average

Original Approximation

Page 124: Signal reconstruction from multiscale edges

Maxima Constraint “II”

• Minimize |W h(x)|^2 creates local maxima at specified positions

• Minimize |d W h|^2 minimize modulus maxima outside specified positions

Page 125: Signal reconstruction from multiscale edges

Maxima Constraint “II”

• Solve minimization problem

|||h|||^2= \sum_j ( ||W_{2^j} h ||^2 + 2^{2j} || dW_{2^j}h/ dx ||^2)

Page 126: Signal reconstruction from multiscale edges

Solve minimization problem

Let K be the space of all sequences of fucntions (g_j^(x) )_j \in Z such that

|(g_j(x))_j \in Z|^2 = \sum_j ( \| g_j\| ^2 + 2^{2j} \| \frac{dg_j}{dx} \|^2 < \infty

(inspired by condition “II”)

Page 127: Signal reconstruction from multiscale edges

V space

• Let V be the space of all dyadic wavelet tranforms of L^2(R).

• V \subset K

Page 128: Signal reconstruction from multiscale edges

\Gamma space

Let \Gamma be the affine space of sequences of functions (g_j(x))_j \in Z \in K such that for any index j and all maxima positions x_n^j

g_j(x_n^j)= W_{2^j} f(x_n^j)

(inspired by Condition I)

Page 129: Signal reconstruction from multiscale edges

\Gamma space

• One can prove that \Gamma is closed in K

Page 130: Signal reconstruction from multiscale edges

Recap

• K: sequence of functions whose sum of – norm of each element– norm of each element’s derivative

is finite

• V: dyadic wavelet transform of L^2

• \Gamma: sequences of functions whose value match those of |W f| at local maxima

Page 131: Signal reconstruction from multiscale edges

Condition I in K

Dyadic wavelet transforms that satisfy Condition I

\Lambda = V \cap \Gamma

Page 132: Signal reconstruction from multiscale edges

Condition I + “II” in K

• Find element of \Lambda = V \cap \Gamma whose norm is minimum

• Use alternate projections on V and \Gamma

Page 133: Signal reconstruction from multiscale edges

Projection on V

P_V = W \circ W^{-1}

In other words,

First:W^-1 dyadic inverse wavelet transform

Then:W dyadic wavelet transform

Page 134: Signal reconstruction from multiscale edges

Projection on \Gamma

At each scale 2^j, add discrete signal e_j^d = ( e_j(n))_{1 \leq n \leq N} that is computed from

e_j(x) = \alpha e^{2^{-jx}} + \beta e^{-2^{-jx}}

e.g. Add piecewise exponential curves to each function of sequence

Page 135: Signal reconstruction from multiscale edges

How to compute coefficients?

• Solve system of equations given by equation (110)

Page 136: Signal reconstruction from multiscale edges

Where to start?

Answer:

zero element of K e.g.

g_j(x) = 0 for all j \in Z

Page 137: Signal reconstruction from multiscale edges

Converge to what?

Answer:

Alternate projections converge to – element of \Lambda (Condition I) – whose norm is minimum (Condition “II”)

Page 138: Signal reconstruction from multiscale edges

How fast is convergence?

Answer:

If (\sqrt{2^j} \psi_{2^j}(x_n^j-x)) is frame and there exists constant 0< D <=1 such that at all scales 2^j the distances between any two consecutive maxima satisfy

|x_n^j – x_{n-1}^j | \geq D2^j

then, convergence is exponential

Page 139: Signal reconstruction from multiscale edges

Convex constraint?


Recommended