Adaptive filtering in the complex wavelet domain

Continuous wavelets. Discret., redundancy, unary filters. Results & conclusion. 5/33. Issues in geophysical signal processing. Shot number. Time (s). 1200. 1400.
2MB taille 2 téléchargements 347 vues
Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

Adaptive filtering in the complex wavelet domain with unary filters: application to multiple suppression in geophysics On echoes and morphing Laurent Duval IFP Energies nouvelles, Rueil-Malmaison, France [email protected]

January 22, 2013

1/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

2/33

On echoes and morphing 2 2000

Scale

4 1500 8

1000

16

500 0 2.8

3

3.2

3.4

3.6

3.8

4

4.2

Time (s) 2 2000

Scale

4 1500 8

1000

16

500 0 2.8

3

3.2

3.4

3.6

3.8

4

Time (s)

Figure 1: ... and adaptive subtraction

2/33

4.2

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

3/33

Agenda 1. Issues in geophysical signal processing 2. Problem: multiple reflections (echoes) • adaptive filtering with approximate models

3. Complex, continuous wavelets • and how they (may) simplify adaptive filtering

4. Discretization, redundancy and unary filters (morphing) • being practical: back to the discrete world

5. Results 6. Conclusion

3/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

4/33

Issues in geophysical signal processing

Figure 2: Seismic data acquisition and wave fields. 4/33

Results & conclusion

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

5/33

Issues in geophysical signal processing Shot number 1.8

2200

2000

1800

1600

1400

1200

2 2.2

Time (s)

2.4 2.6 2.8 3 3.2 3.4

Figure 3: Seismic data: aspect & dimensions (time, offset) 5/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

6/33

Issues in geophysical signal processing Reflection seismology: • seismic waves propagate through the subsurface medium • seismic traces: seismic wave fields recorded at the surface • primary reflections: geological interfaces • many types of distortions/disturbances • processing goal: extract relevant information for seismic data • led to important signal processing tools: • ℓ1 -promoted deconvolution (Claerbout, 1973) • wavelets (Morlet, 1975) • exabytes (106 gigabytes) of incoming data • need for fast, scalable algorithms

6/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

7/33

Multiple reflections and models

Figure 4: Seismic data acquisition: focus on multiple reflections

7/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

8/33

Multiple reflections and models Multiple reflections: • seismic waves bouncing between layers

• one of the most severe types of interferences • obscure deep reflection layers

• high cross-correlation between primaries (p) and multiples (m) • additional incoherent noise (n) • d(t) = p(t) + m(t)+n(t) • model-based multiple attenuation: x1 (t), x2 (t), x3 (t) • how to use approximate models?

8/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

9/33

Multiple reflections and models

Amplitude

−5

Data Model

0

5 2.8

(a)

3

3.2

3.4

3.6

3.8

4

4.2

Time (s)

Figure 5: Multiple reflections: data trace d and model x1

9/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

10/33

Multiple reflections and models Multiple filtering: • multiple prediction (correlation, wave equation) has limitations • models are not accurate • m(t) ≈ ak (t)xk (t − τk (t))? • standard: identify, apply a matching filer, subtract • primaries and multiples are not (fully) uncorrelated • same (seismic) source • similarities/dissimilarities in time • similarities/dissimilarities in frequency • variations in amplitude, waveform, delay • issues in matching filter length: • short filters and windows: local details • long filters and windows: large scale effects 10/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

11/33

Multiple reflections and models Amplitude

−5

Data Model

0

5 2.8

3

3.2

3.4

3.6

3.8

4

4.2

Time (s)

(a)

Amplitude

−2 Filtered Data (+) Filtered Model (−)

−1 0 1 2.8

(b)

3

3.2

3.4

3.6

3.8

4

4.2

Time (s)

Figure 6: Multiple reflections: data trace, model and adaptation 11/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

12/33

Multiple reflections and models Shot number 2200

2000

1800

1600

Shot number 1400

1200

1.8

2

2

2.2

2.2

2.4

2.4

Time (s)

Time (s)

1.8

2.6 2.8

2200

2000

1800

2200

2000

1800

3 3.2

3.4

2200

2000

1800

1600

1200

Shot number 1400

1200

1.8

2

2

2.2

2.2

2.4

2.4

Time (s)

Time (s)

1400

3.4

Shot number

2.8

1200

2.8

3.2

2.6

1400

2.6

3

1.8

1600

1600

2.6 2.8

3

3

3.2

3.2

3.4

3.4

Figure 7: Multiple reflections: data trace and models, 2D version 12/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

13/33

Multiple reflections and models • A long history of multiple filtering methods • general idea: combine adaptive filtering and transforms • data transforms: Fourier, Radon • enhance the differences between primaries, multiples and noise • reinforce the adaptive filtering capacity • intrication with adaptive filtering? • might be complicated (think about inverse transform)

• Main idea here: • exploit the non-stationary in the data • naturally allow both large scale & local detail matching • work in a complex domain: amplitude and phase representation • emulate an analytic signal representation (Hilbert transform)

13/33

⇒ Complex, continuous wavelets • intermediate complexity in the transform • hyper-simplicity in the (unary) adaptive filtering

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

14/33

Continuous wavelets 0.5

0.5

0

0

−0.5 −3

−0.5 −2

−1

0 1 Real part

2

3

−3

−2

−1 0 1 Imaginary part

2

3

0.5 0 −0.5 0.5 0 −0.5 Imaginary part

−3

−2

−1

0

1

2

3

Real part

Figure 8: Complex wavelets at two different scales - 1

14/33

Results & conclusion

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

15/33

Continuous wavelets 0.5

0.5

0

0

−0.5

−0.5 −5

0 Real part

5

−5

0 Imaginary part

5

0.5 0 −0.5 0.5 0 −0.5 Imaginary part

−8

−6

−4

−2

0

2

4

6

8

Real part

Figure 9: Complex wavelets at two different scales - 2

15/33

Results & conclusion

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

16/33

Continuous wavelets • Transformation group:

affine = translation (τ ) + dilation (a)

• Basis functions:

1 ψτ,a (t) = √ ψ a • • • •

t−τ a



a > 1: dilation a< √1: contraction 1/ a: energy normalization multiresolution (vs monoresolution in STFT) FT

ψτ,a (t) −→ 16/33



√ aΨ(af )e−ı2πf τ

Results & conclusion

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

17/33

Continuous wavelets • Definition

Cs (τ, a) =

Z

∗ s(t)ψτ,a (t)dt

• Vector interpretation

Cs (τ, a) = hs(t), ψτ,a (t)i projection onto time-scale atoms (vs time-frequency) • Redundant transform: τ → τ × a “samples” • Parseval-like formula

Cs (τ, a) = hX(f ), Ψτ,a (f )i ⇒ time-scale domain operations! (cf. Fourier) 17/33

Results & conclusion

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

18/33

Continuous wavelets Introductory example

Data

Real part

Modulus

Imaginary part

Figure 10: Noisy chirp mixture in time-scale & sampling 18/33

Results & conclusion

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

19/33

Continuous wavelets Noise spread & feature simplification 4 2 0 −2 −4

0

50

100

150

200

250

300

350

400

450

5 0 −5 10 0 −10

300

350

400

450

500

550

600

650

700

Figure 11: Noisy chirp mixture in time-scale: scale, zoomed wiggle 19/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

20/33

Continuous wavelets Amplitude

−5

Data Model

0

5 2.8

3

3.2

3.4

3.6

3.8

4

4.2

Time (s)

(a) 2

2 2000

2000 4

1500 8

1000

16

500

Scale

Scale

4

1500 8

1000

16

500

0 2.8

3

3.2

3.4

3.6

Time (s)

3.8

4

4.2

0 2.8

3

3.2

3.4

3.6

Time (s)

Figure 12: Which morphing is easier: time or time-scale? 20/33

3.8

4

4.2

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

21/33

Continuous wavelets • Inversion with another wavelet φ

s(t) =

ZZ

Cs (u, a)φu,a (t)

duda a2

⇒ time-scale domain processing! (back to the signal) • Scalogram |Cs (t, a)|2 • Energy conversation

E= • Parseval-like formula

hs1 , s2 i = 21/33

ZZ

ZZ

|Cs (t, a)|2

dtda a2

Cs1 (t, a)Cs∗2 (t, a)

dtda a2

Results & conclusion

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

22/33

Continuous wavelets • Wavelet existence: admissibility criterion

0 < Ah =

Z

+∞ 0

Z 0 b∗ b ∗ (ν)Ψ(C) Φ (ν)Ψ(ν) Φ dν = dν < ∞ ν ν −∞

generally normalized to 1 • Induces band-pass property:

• necessary condition: |Φ(0)| = 0, or zero-average shape • amplitude spectrum neglectable w.r.t. |v| at infinity

• examples: Morlet-Gabor (non. adm.)

ψ(t) = √ 22/33

1 2πσ 2

t2

e− 2σ2 e−ı2πf0 t

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

23/33

Discretization, redundancy and unary filters Being practical again: deal with discrete signals • Can one sample in time-scale (CWT):

Cs (τ, a) =

Z

∗ s(t)ψτ,a (t)dt,

1 ψτ,a (t) = √ ψ a



t−τ a



with cj,k = Cs (kb0 aj0 , aj0 ), (j, k) ∈ Z and still be able to recover s(t)? • Result 1 (Daubechies, 1984): there exists a wavelet frame if

a0 b0 < C, (depending on ψ). A frame is generally redundant

• Result 2 (Meyer, 1985): there exist an orthonormal basis for a

specific ψ (non trivial, Meyer wavelet) and a0 = 2 b0 = 1

Now: how to choose the practical level of redundancy? 23/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

24/33

Discretization, redundancy and unary filters 0.15 primary multiple noise sum

true multiple adapted multiple 0.1

0.05

0

−0.05

−0.1 0

0.5

1

1.5

2

2.5

3

3.5

4

0

0.5

1

1.5

Time (s)

2

2.5

3

3.5

4

Time (s)

Median S/Nadapt (dB)

19 20

18

18

17

16

16 15

14

14 12 13 10 20

12 15 10

S/N (dB)

5 4

6

8

10

12

14

16

11 10

Redundancy

Figure 13: Redundancy selection with variable noise experiments 24/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

25/33

Discretization, redundancy and unary filters • Complex Morlet wavelet:

ψ(t) = π −1/4 e−iω0 t e−t

2 /2

, ω0 : central frequency

• Discretized time r, octave j, voice v: v ψr,j [n] = √

1 2j+v/V

ψ



nT − r2j b0 2j+v/V



, b0 : sampling at scale zero

• Time-scale analysis:

X v v [n] d = dvr,j = d[n], ψr,j [n] = d[n]ψr,j n

25/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

26/33

Discretization, redundancy and unary filters 2

2 2000

2000 4

1500 8

1000

16

Scale

Scale

4

1500 8

1000

16

500

500

0 2.8

3

3.2

3.4

3.6

3.8

4

0

4.2

2.8

3

3.2

3.4

Time (s)

3.6

3.8

4

4.2

Time (s)

2

2 2000

2000 4

1500 8

1000

16

500

Scale

Scale

4

1500 8

1000

16

500

0 2.8

3

3.2

3.4

3.6

Time (s)

3.8

4

4.2

0 2.8

3

3.2

3.4

3.6

3.8

4

4.2

Time (s)

Figure 14: Morlet wavelet scalograms, data and models

Take advantage from the closest similarity/dissimilarity: • remember the wiggle: on sliding windows, at each scale, a single complex coefficient compensates amplitude and phase 26/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

27/33

Discretization, redundancy and unary filters • Windowed adaptation: complex aopt compensates local

delay/amplitude mismatches: aopt

2

X

ak x k = arg min d −

{ak }(k∈K) k

• Vector Wiener equations for complex signals:

hd, xm i = • Time-scale synthesis:

ˆ = d[n]

k

ak hxk , xm i

XX r

27/33

X

j,v

v dˆvr,j ψer,j [n]

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

28/33

Results

2

2 2000

2000 4

1500 8

1000

16

Scale

Scale

4

1500 8

1000

16

500

500

0 2.8

3

3.2

3.4

3.6

3.8

4

0

4.2

2.8

3

3.2

3.4

Time (s)

3.6

3.8

4

4.2

Time (s)

2

2 2000

2000 4

1500 8

1000

16

500

Scale

Scale

4

1500 8

1000

16

500

0 2.8

3

3.2

3.4

3.6

Time (s)

3.8

4

4.2

0 2.8

3

3.2

3.4

3.6

3.8

4

Time (s)

Figure 15: Wavelet scalograms, data and models, after unary adaptation

28/33

4.2

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

29/33

Results (reminders)

2

2 2000

2000 4

1500 8

1000

16

Scale

Scale

4

1500 8

1000

16

500

500

0 2.8

3

3.2

3.4

3.6

3.8

4

0

4.2

2.8

3

3.2

3.4

Time (s)

3.6

3.8

4

4.2

Time (s)

2

2 2000

2000 4

1500 8

1000

16

500

Scale

Scale

4

1500 8

1000

16

500

0 2.8

3

3.2

3.4

3.6

Time (s)

3.8

4

4.2

0 2.8

3

3.2

3.4

3.6

Time (s)

Figure 16: Wavelet scalograms, data and models

29/33

3.8

4

4.2

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

30/33

Results Shot number 1.8

2200

2000

1800

1600

1400

2 2.2

Time (s)

2.4 2.6 2.8 3 3.2 3.4

Figure 17: Original data 30/33

1200

Results & conclusion

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

31/33

Results Shot number 1.8

2200

2000

1800

1600

1400

2 2.2

Time (s)

2.4 2.6 2.8 3 3.2 3.4

Figure 18: Filtered data 31/33

1200

Results & conclusion

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

32/33

Conclusions Take-away messages: • Technical side • • • • •

Take good care of cascaded processing Non-stationary, wavelet-based, adaptive multiple filtering “Complex” wavelet transform + simple one-tap (unary) filter Redundancy selection: noise robustness and processing speed Smooth adaptation to adaptive joint multiple model filtering

• Practical side • Industrial integration • Competitive with more standard processing • Alternative results: less sensitive to random noises • Future work: better integrate incoherent noise 32/33

Context

Multiple filtering

Continuous wavelets

Discret., redundancy, unary filters

Results & conclusion

33/33

Acknowledgements & references

Ventosa, S., S. Le Roy, I. Huard, A. Pica, H. Rabeson, P. Ricarte, and L. Duval, 2012, Adaptive multiple subtraction with wavelet-based complex unary Wiener filters: Geophysics, 77, V183–V192. Jacques, L., L. Duval, C. Chaux, and G. Peyr´e, 2011, A panorama on multiscale geometric representations, intertwining spatial, directional and frequency selectivity: Signal Process., 91, 2699–2730.

33/33