Download presentation
Presentation is loading. Please wait.
Published byDarin Penniman Modified over 9 years ago
1
Signal reconstruction from multiscale edges A wavelet based algorithm
2
Author Yen-Ming Mark Lai (ylai@amsc.umd.edu)ylai@amsc.umd.edu Advisor Dr. Radu Balan rvbalan@math.umd.edu CSCAMM, MATH
3
Motivation Save edges
4
Motivation Save edge type sharp one- sided edge sharp two- sided edge “noisy” edges
5
Motivation edgesedge typereconstruct +=
6
Algorithm Decomposition + Reconstruction
7
Decomposition Discrete Wavelet Transform Save edges e.g. local extrema Input “edges+edge type”
8
Decomposition input edge detection (scale 1) edge detection (scale 2) edge detection (scale 4) = = =
9
Reconstruction Find approximation Inverse Wavelet Transform Output local extrema “edges+edge type”
10
How to find approximation? Find approximation local extrema “edges+edge type”
11
Find approximation (iterative) Alternate projections between two spaces
12
Find approximation (iterative) sequences of functionswhose H1 normis finite
13
Find approximation (iterative)
14
sequences of functions: 1) interpolate input signal’s wavelet extrema 2) have minimal H1 norm
15
Q: Why minimize over H1 norm? A: Interpolation points act like local extrema
16
Numerical Example algorithm interpolates between points unclear what to do outside interpolation points
17
Find approximation (iterative)
18
dyadic wavelet transforms of L^2 functions
19
Find approximation (iterative) intersection = space of solutions
20
Find approximation (iterative) Start at zero element to minimize solution’s norm
21
Preliminary Results
22
Step Edge (length 8)
23
Quadratic Spline Wavelet
24
Take DWT
26
[1,-1](, Convolution in Matlab * [0,0,0,0,1,1,1,1]conv) next current +=next-current
27
* Convolution in Matlab next-current =0 next-current=-1
28
* Convolution in Matlab = next-current= 0next-current= 0next-current= 0next-current= 0next-current= 1next-current= 0next-current= 0next-current= 0 next-current= -1
29
Save Local Extrema
31
Interpolate DWT (Level 1) interpolation to minimize H1 norm unclear what to do outside interpolation points
32
error Original DWT – Level 1 Interpolated DWT – Level 1
33
error Original DWT – Level 2 Interpolated DWT – Level 2
34
error Original DWT – Level 3 Interpolated DWT – Level 3
35
matrix inversion failed Original DWT – Level 4 Interpolated DWT – Level 4
36
Interpolated DWT
37
Take IDWT to Recover Signal
38
Recovered Signal (Red) and Original Step Edge (Blue)
39
Summary
40
Choose Input
41
Take DWT
42
Save Local Extrema of DWT
43
Interpolate Local Extrema of DWT
44
Take IDWT
45
Issues Convolution detects false edges What to do with values outside interpolations points? What to do when matrix inversion fails?
46
Timeline Dec – write up mid-year report Jan– code local extrema search Oct/Nov – code Alternate Projections (90%) (85%) (100%)
47
Timeline February/March – test and debug entire system (8 weeks) April – run code against database (4 weeks) May – write up final report (2 weeks)
48
Questions?
49
Supplemental Slides
50
Input Signal (256 points) Which points to save?
51
Compressed Signal (37 points) What else for reconstruction?
52
Compressed Signal (37 points) sharp one-sided edge
53
Compressed Signal (37 points) sharp two-sided edge
54
Compressed Signal (37 points) “noisy” edges
55
Calculation Reconstruction: edges edge type information Original:(256 points) (37 points) (x points)
56
37 Compression edges edge type + x<256
57
Summary Save edges
58
Summary Save edge type sharp one- sided edge sharp two- sided edge “noisy” edges
59
Summary edgesedge typereconstruct +=
60
Algorithm Decomposition + Reconstruction
61
Decomposition Discrete Wavelet Transform Save edges e.g. local extrema Input “edges+edge type”
62
Reconstruction Find approximation Inverse Wavelet Transform Output local extrema “edges+edge type”
63
What is Discrete Wavelet Transform? Discrete Wavelet Transform Input
64
What is DWT? 1)Choose mother wavelet 2)Dilate mother wavelet 3)Convolve family with input DWT
65
1) Choose mother wavelet
66
2) Dilate mother wavelet mother wavelet dilate
67
2) Dilate mother wavelet
68
Convolve family with input input wavelet scale 1 wavelet scale 2 wavelet scale 4 = = =
69
Convolve “family” input wavelet scale 1 wavelet scale 2 wavelet scale 4 = = = DWT multiscale
70
What is DWT? (mathematically)
71
How to dilate? mother wavelet
72
How to dilate? dyadic (powers of two)
73
How to dilate? scale
74
How to dilate? z halve amplitude double support
75
Mother Wavelet (Haar) scale 1, j=0
76
Mother Wavelet (Haar) scale 2, j=1
77
Mother Wavelet (Haar) scale 4, j=2
78
What is DWT? Convolution of dilates of mother wavelets against original signal.
79
What is DWT? Convolution of dilates of mother wavelets against original signal. convolution
80
What is DWT? Convolution of dilates of mother wavelets against original signal. dilates
81
What is DWT? Convolution of dilates of mother wavelets against original signal. original signal
82
What is convolution? (best match operation) Discrete Wavelet Transform Input 1)mother wavelet 2)dilation 3)convolution
83
Convolution (best match operator) dummy variable
84
Convolution (best match operator) flip g around y axis
85
Convolution (best match operator) shifts g by t
86
do nothing to f Convolution (best match operator)
87
pointwise multiplication
88
Convolution (best match operator) integrate over R
89
flip g and shift by 7.7 Convolution (one point)
90
do nothing to f Convolution (one point)
91
multiply f and g pointwise Convolution (one point)
92
integrate over R Convolution (one point)
93
scalar
94
Convolution of two boxes
104
Why convolution? Location of maximum best fit
105
Where does red box most look like blue box?
106
Why convolution? Location of maximum best fit maximum
107
Why convolution? Location of maximum best fit maximabest fit location
108
Where does exponential most look like box?
110
maximum
111
Where does exponential most look like box? maximum best fit location
112
So what? If wavelet is an edge, convolution detects location of edges
113
Mother Wavelet (Haar)
116
What is edge? Local extrema of wavelet transform
117
Summary of Decomposition Discrete Wavelet Transform Save “edges” e.g. local extrema Input “edges+edge type”
118
Summary of Decomposition input edge detection (scale 1) edge detection (scale 2) edge detection (scale 4) = = =
119
How to find approximation? Find approximation local extrema “edges+edge type”
120
Find approximation (iterative) Alternate projections between two spaces
121
Find approximation (iterative)
122
H_1 Sobolev Norm
123
Find approximation (iterative) functions that interpolate given local maxima points
124
Find approximation (iterative) dyadic wavelet transforms of L^2 functions
125
Find approximation (iterative) intersection = space of solutions
126
Find approximation (iterative) Start at zero element to minimize solution’s norm
127
Q: Why minimize over K? A: Interpolation points act like local extrema
128
Reconstruction Find approximation (minimization problem) Inverse Wavelet Transform Output
129
Example Input of 256 points
130
Input Signal (256 points)
131
major edges
132
Input Signal (256 points) minor edges (many)
133
Discrete Wavelet Transform Dyadic (powers of 2) = DWT of “f” at scale 2^j
134
DWT (9 scales, 256 points each)
135
major edges
136
Input Signal (256 points) major edges
137
DWT (9 scales, 256 points each) minor edges (many)
138
Input Signal (256 points) minor edges (many)
139
Decomposition Discrete Wavelet Transform Save “edges” e.g. local extrema Input
140
DWT (9 scales, 256 points each)
141
Save Local Maxima
142
Local Maxima of Transform
143
low scale most sensitive
144
Mother Wavelet (Haar)
145
Local Maxima of Transform high scale least sensitive
146
Mother Wavelet (Haar)
147
Decomposition Discrete Wavelet Transform Save “edges” e.g. local extrema Input
148
Local Maxima of Transform
149
Find approximation (iterative) Alternate projections between two spaces
150
Reconstruction Find approximation (minimization problem) Inverse Wavelet Transform Output
151
Mallat’s Reconstruction (20 iterations)
152
original reconstruction (20 iterations)
153
Implementation Language: MATLAB –Matlab wavelet toolbox Complexity: convergence criteria
154
Databases Baseline signals –sinusoids, Gaussians, step edges, Diracs Audio signals
155
Validation Unit testing of components –DWT/IDWT –Local extrema search –Projection onto interpolation space (\Gamma)
156
Testing L2 norm of the error (sum of squares) versus iterations Saturation point in iteration (knee)
157
Schedule (Coding) October/November – code Alternate Projections (8 weeks) December – write up mid-year report (2 weeks) January – code local extrema search (1 week)
158
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)
159
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
160
Deliverables Documented MATLAB code Testing results (reproducible) Mid-year report/Final report
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.