Presentation is loading. Please wait.

Presentation is loading. Please wait.

Signal reconstruction from multiscale edges A wavelet based algorithm.

Similar presentations


Presentation on theme: "Signal reconstruction from multiscale edges A wavelet based algorithm."— Presentation transcript:

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

25

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

30

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

95

96

97

98

99

100

101

102

103

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?

109

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)

114

115

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


Download ppt "Signal reconstruction from multiscale edges A wavelet based algorithm."

Similar presentations


Ads by Google