Signal reconstruction from multiscale edges A wavelet based algorithm
Algorithm
Decomposition Discrete Wavelet Transform Save edges e.g. local extrema Input
Reconstruction Find approximation Inverse Wavelet Transform Output local extrema contained two bugs
What is Discrete Wavelet Transform?
Discrete Wavelet Transform (1 level) input Detail Coefficients Approximation Coefficients
input Detail Level 1 Detail Level 2 Detail Level 3 Approximation Level 3
Input + Details (3 Levels)
Input + Approximation (3 Levels)
DWT + IDWT input Detail Coefficients Approximation Coefficients + output
Perfect Reconstruction Property + XX =
+ XX = Bug: Incorrect coefficient given in paper
Perfect Reconstruction Property + XX = Given Correct
input Detail Coefficients Approximation Coefficients + output + XX =
Detail (L3) Approx. (L3) + + Detail (L2) + Detail (L1) output
Detail (L3) Approx. (L3) + + Detail (L2) + Detail (L1) output Bug: cascade not implemented correctly
Validation
Interpolation Space check for interpolation DWT Space check for perfect reconstruction DWT -> IDWT = identity
Results
Step Edge (Length 32)
Details (5 levels)
Approximation (5 levels)
All coefficients discarded since last level zero
Detail (L3) Approx. (L3) + + Detail (L2) + Detail (L1) output
Extrema (20/32 points, 63% compression)
Find approximation (iterative) Alternate projections between two spaces
Reconstructed (Iteration 1, 11, 21, 31)
l2 error (31 iterations)
Previous Result with Bug (Iteration 1, 11, 21)
Previous Result with Bug
Gaussian (Length 32)
Details (5 Levels)
Approximation (5 Levels)
Extrema (19/32 points, 59% compression)
Reconstructed (Iteration 1, 11, 21, 31)
l2 error (31 iterations)
Previous Result with Bug (Iteration 1, 11, 21)
Previous Result with Bug
Dirac Delta (Length 32)
Details (5 Levels)
Approximation (5 Levels)
Extrema (20/32 points, 62% compression)
Reconstructed (Iteration 1, 11, 21, 31)
l2 error (31 iterations)
Sinusoid (Length 32)
Details (5 Levels)
Approximation (5 Levels)
Extrema (22/32 points, 69% compression)
Reconstructed (Iteration 1, 11, 21, 31)
l2 error (31 iterations)
Triangle (Length 32)
Details (5 Levels)
Approximation (5 Levels)
Extrema (33/32 points,- 3% compression)
Reconstructed (Iteration 1, 11, 21, 31)
l2 error (31 iterations)
Random Noise (Length 32)
Details (5 Levels)
Approximation (5 Levels)
Extrema (40/32 points,- 25% compression)
Reconstructed (Iteration 1, 11, 21, 31)
l2 error (31 iterations)
Audio Signals
Source: Zoolander (2001)
Reconstructed Signal
Zoom 1
Reconstructed Signal
Zoom 2
Reconstructed Signal
Zoom 3
WindowExtremaWindowExtremaWindowExtremaWindowExtrema Extrema Saved For Each Window
Extrema versus Level (Window 9)
Input
Reconstructed
1)Do not do maximum DWT decomposition Lowest approximation coefficient will not be constant 2)Interpolate approximation coefficients instead Future Work
input Detail Level 1 Detail Level 2 Detail Level 3 Approximation Level 3
input Detail Level 1 Detail Level 2 Approximation Level 2
Questions?
Supplemental Slides
How to find approximation?
What do we know about saved points? 1) Local extrema 2) Come from wavelet transform
Find approximation (iterative) Alternate projections between two spaces
Find approximation (iterative) sequences of functionswhose H1 normis finite
Find approximation (iterative)
sequences of functions: interpolate input signal’s wavelet extrema
Sample Element from Γ
Find approximation (iterative) What happens when element is projected onto Γ? 1) Saved points are interpolated 2) H1 norm minimized
Q: Why minimize over H1 norm? A: Interpolation points act like local extrema
Find approximation (iterative) dyadic wavelet transforms of L^2 functions
Find approximation (iterative) How to project onto V space (DWT space)?
Project onto V space (DWT space) IDWT input (interpolated functions) DWT output (DWT of l2 function) l2 function not necessarily DWT of l2 function
Find approximation (iterative) start at zero element
What do we know about saved points? 1) Local extrema 2) Come from wavelet transform
Find approximation (iterative) intersection = space of solutions interpolation space wavelet transform space
Error Analysis (Step Edge)
Step Edge (Length 32)
Discrete Wavelet Transform (3 levels)
Save Points (Extrema + Ends)
Alternate Projection (Initialization) zero out all wavelet values
Alternate Projection (Iteration 1a) project onto Γ space (interpolate points)
DWT after Γ Projection (1 iteration) extrema points interpolated
DWT after Γ Projection (1 iteration) same concavity
Alternate Projection (Iteration 1b) project onto V space (DWT space)
false edge(periodic padding)
save end points(interpolate end intervals)
Discrete Wavelet Transform input edge detection (scale 1) edge detection (scale 2) edge detection (scale 4) = = =