Вы находитесь на странице: 1из 63

Filtering Geophysical Data: Be careful!

 Filtering: basic concepts


 Seismogram examples, high-low-bandpass filters
 The crux with causality
 Windowing seismic signals
 Various window functions
 Multitaper approach
 Wavelets (principle)

Scope: Understand the effects of filtering on time series


(seismograms). Get to know frequently used windowing
functions.

1
Filtering Computational Geophysics and Data Analysis
Why filtering

1. Get rid of unwanted frequencies


2. Highlight signals of certain frequencies
3. Identify harmonic signals in the data
4. Correcting for phase or amplitude
characteristics of instruments
5. Prepare for down-sampling
6. Avoid aliasing effects

2
Filtering Computational Geophysics and Data Analysis
A seismogram
Amplitude

Time (s)

Frequency (Hz)
3
Filtering Computational Geophysics and Data Analysis
Digital Filtering

Often a recorded signal contains a lot of information that we


are not interested in (noise). To get rid of this noise we
can apply a filter in the frequency domain.

The most important filters are:

• High pass: cuts out low frequencies

• Low pass: cuts out high frequencies

• Band pass: cuts out both high and low frequencies and
leaves a band of frequencies

• Band reject: cuts out certain frequency band and leaves


all other frequencies

4
Filtering Computational Geophysics and Data Analysis
Cutoff frequency

5
Filtering Computational Geophysics and Data Analysis
Cut-off and slopes in spectra

6
Filtering Computational Geophysics and Data Analysis
Digital Filtering

7
Filtering Computational Geophysics and Data Analysis
Low-pass filtering

8
Filtering Computational Geophysics and Data Analysis
Lowpass filtering

9
Filtering Computational Geophysics and Data Analysis
High-pass filter

10
Filtering Computational Geophysics and Data Analysis
Band-pass filter

11
Filtering Computational Geophysics and Data Analysis
The simplemost filter

The simplemost 1

filter gets rid of 0.8

Filter Amplitude
all frequencies 0.6

above a certain 0.4

cut-off frequency 0.2

(low-pass), „box- 0
-100 -50 0
Frequency (Hz)
50 100

car“
 1 if   
H L ( )   
0 if   0 

12
Filtering Computational Geophysics and Data Analysis
The simplemost filter

… and its brother


… (high-pass) 1

0.8

Filter Amplitude
0.6

0.4

0.2

0
-100 -50 0 50 100
Frequency (Hz)

 1 if   
H H ( )  1  H L ( )   
0 if   0 

13
Filtering Computational Geophysics and Data Analysis
… let‘s look at the consequencse

1
 0.8
H ( )

Filter Amplitude
 F ( k )e
ik
f (t )  dt 0.6

2
0.4

 0.2

0
-100 -50 0 50 100
Frequency (Hz)


1

ik
f filt
(t )  H ( ) F ( ) e dt
2 

… but what does H() look like in the


time domain … remember the
convolution theorem?

14
Filtering Computational Geophysics and Data Analysis
… surprise …

1
 0.8
H ( )

Filter Amplitude
 H ( )e
ik
h(t )  dt 0.6

2
0.4

 0.2

0
-100 -50 0 50 100
Frequency (Hz)

1.2

0.8

0.6

0.4

0.2

-0.2

-0.4

-0.6

-0.8
-40 -30 -20 -10 0 10 20 30 40

15
Filtering Computational Geophysics and Data Analysis
Zero phase and causal filters

Zero phase filters can be realised by

 Convolve first with a chosen filter


 Time reverse the original filter and convolve
again
 First operation multiplies by F(), the 2nd
operation is a multiplication by F*()
 The net multiplication is thus | F(w)|2
 These are also called two-pass filters

16
Filtering Computational Geophysics and Data Analysis
The Butterworth Filter (Low-pass, 0-phase)

1
FL ( ) 
1  ( / c ) 2n

Butterworth n=1, f0=20 Hz Butterworth n=4, f0=20 Hz


1 1

0.8 0.8
Filter amplitude

Filter amplitude
0.6 0.6

0.4 0.4

0.2 0.2

0 0
0 20 40 60 80 100 0 20 40 60 80 100
Frequency (Hz) Frequency (Hz)
Butterworth n=9, f0=20 Hz Butterworth n=16, f0=20 Hz
1 1

0.8 0.8
Filter amplitude

Filter amplitude

0.6 0.6

0.4 0.4

0.2 0.2

0 0
0 20 40 60 80 100 0 20 40 60 80 100
Frequency (Hz) Frequency (Hz) 17
Filtering Computational Geophysics and Data Analysis
… effect on a spike …

Original function Filtered with n=1, f0=20 Hz


1

0.8 0.2
Amplitude

Amplitude
0.6 0.15

0.4 0.1

0.2 0.05

0
0 1 2 3 4 5 0 0.2 0.4 0.6 0.8 1
Time (s) Time (s)
Filtered with n=4, f0=20 Hz Filtered with n=9, f0=20 Hz
0.2 0.2

0.15 0.15
Amplitude

Amplitude
0.1 0.1

0.05 0.05

0 0

0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1


Time (s) Time (s)

18
Filtering Computational Geophysics and Data Analysis
… on a seismogram …
… varying the order …

-6
x 10 Original function -6
x 10 Filtered with n=4, f0=1 Hz

5
1
Amplitude

Amplitude
0 0

-1
-5

40 45 50 55 60 65 40 45 50 55 60 65
Time (s) Time (s)
-6
x 10 Filtered with n=9, f0=1 Hz -6
x 10 Filtered with n=16, f0=1 Hz
2
2

1 1
Amplitude

0 Amplitude 0

-1 -1

-2
-2
40 45 50 55 60 65 40 45 50 55 60 65
Time (s) Time (s)

19
Filtering Computational Geophysics and Data Analysis
… on a seismogram …
… varying the cut-off frequency…

-6
x 10 Original function -6
x 10 Filtered with n=4, f0=1 Hz

5
1
Amplitude

Amplitude
0 0

-1
-5

40 45 50 55 60 65 40 45 50 55 60 65
Time (s) Time (s)
-6
x 10 Filtered with n=4, f0=0.666667 Hz -6
x 10 Filtered with n=4, f0=0.5 Hz

1
1
0.5 0.5
Amplitude

Amplitude

0 0
-0.5 -0.5
-1
-1
40 45 50 55 60 65 40 45 50 55 60 65
Time (s) Time (s)

20
Filtering Computational Geophysics and Data Analysis
The Butterworth Filter (High-Pass)

1
FH ( )  1 
1  ( / c ) 2 n
Butterworth n=1, f0=20 Hz Butterworth n=4, f0=20 Hz
1 1

0.8 0.8
Filter amplitude

Filter amplitude
0.6 0.6

0.4 0.4

0.2 0.2

0 0
0 20 40 60 80 100 0 20 40 60 80 100
Frequency (Hz) Frequency (Hz)
Butterworth n=9, f0=20 Hz Butterworth n=16, f0=20 Hz
1 1

0.8 0.8
Filter amplitude

Filter amplitude

0.6 0.6

0.4 0.4

0.2 0.2

0 0
0 20 40 60 80 100 0 20 40 60 80 100
Frequency (Hz) Frequency (Hz)
21
Filtering Computational Geophysics and Data Analysis
… effect on a spike …

Original function Filtered with n=1, f0=20 Hz


1

0.8 0.6
Amplitude

Amplitude
0.6 0.4

0.4 0.2

0.2 0

0
0 1 2 3 4 5 0 0.2 0.4 0.6 0.8 1
Time (s) Time (s)
Filtered with n=4, f0=20 Hz Filtered with n=9, f0=20 Hz

0.6 0.6
Amplitude

Amplitude
0.4 0.4

0.2 0.2

0 0

0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1


Time (s) Time (s)

22
Filtering Computational Geophysics and Data Analysis
… on a seismogram …
… varying the order …

-6
x 10 Original function -6
x 10 Filtered with n=4, f0=1 Hz

5 5
Amplitude

Amplitude
0 0

-5 -5

40 45 50 55 60 65 40 45 50 55 60 65
Time (s) Time (s)
-6
x 10 Filtered with n=9, f0=1 Hz -6
x 10 Filtered with n=16, f0=1 Hz

5 5
Amplitude

Amplitude
0 0

-5 -5

40 45 50 55 60 65 40 45 50 55 60 65
Time (s) Time (s)

23
Filtering Computational Geophysics and Data Analysis
… on a seismogram …
… varying the cut-off frequency…

-6
x 10 Original function -6
x 10 Filtered with n=4, f0=1 Hz
5 4

2
Amplitude

Amplitude
0 0

-2

-5 -4
50 52 54 56 58 60 50 52 54 56 58 60
Time (s) Time (s)
-6
x 10 Filtered with n=4, f0=1.5 Hz -6
x 10 Filtered with n=4, f0=2 Hz
4 4

2 2
Amplitude

Amplitude
0 0

-2 -2

-4 -4
50 52 54 56 58 60 50 52 54 56 58 60
Time (s) Time (s)

24
Filtering Computational Geophysics and Data Analysis
The Butterworth Filter (Band-Pass)

1
FBP ( )  1 
1  (  b ) /  
2n

Butterworth n=2, f0=20 Hz Butterworth n=4, f0=20 Hz


1 1

0.8 0.8
Filter amplitude

Filter amplitude
0.6
  5Hz 0.6

0.4 0.4

0.2 0.2

0 0
0 20 40 60 80 100 0 20 40 60 80 100
Frequency (Hz) Frequency (Hz)
Butterworth n=6, f0=20 Hz Butterworth n=8, f0=20 Hz
1 1

0.8 0.8
Filter amplitude

Filter amplitude
0.6 0.6

0.4 0.4

0.2 0.2

0 0
0 20 40 60 80 100 0 20 40 60 80 100
Frequency (Hz) Frequency (Hz)

25
Filtering Computational Geophysics and Data Analysis
… effect on a spike …

Original function Filtered with n=1, f0=20 Hz


1

0.8 0.1
Amplitude

Amplitude
0.6 0.05

0.4 0
0.2
-0.05
0
0 1 2 3 4 5 0 0.2 0.4 0.6 0.8 1
Time (s) Time (s)
Filtered with n=4, f0=20 Hz Filtered with n=9, f0=20 Hz
0.1 0.1

0.05 0.05
Amplitude

Amplitude
0 0

-0.05 -0.05

0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1


Time (s) Time (s)

26
Filtering Computational Geophysics and Data Analysis
… on a seismogram …
… varying the order …

-6
x 10 Original function -6
x 10 Filtered with n=2, f0=1 Hz

5 2

1
Amplitude

Amplitude
0 0

-1
-5 -2
40 45 50 55 60 65 40 45 50 55 60 65
Time (s) Time (s)
-6
x 10 Filtered with n=3, f0=1 Hz -6
x 10 Filtered with n=4, f0=1 Hz

2 2
1
Amplitude

Amplitude
0 0
-1
-2 -2

40 45 50 55 60 65 40 45 50 55 60 65
Time (s) Time (s)

27
Filtering Computational Geophysics and Data Analysis
… on a seismogram …
… varying the cut-off frequency…

x 10
-6 Original function -7
x 10 Filtered with n=4, f0=2 Hz
5
5
Amplitude

Amplitude
0 0

-5
-5
50 52 54 56 58 60 50 52 54 56 58 60
Time (s) Time (s)
-7
x 10 Filtered with n=4, f0=3 Hz -7
x 10 Filtered with n=4, f0=4 Hz

5 5
Amplitude

Amplitude
0 0

-5 -5

50 52 54 56 58 60 50 52 54 56 58 60
Time (s) Time (s)

28
Filtering Computational Geophysics and Data Analysis
Zero phase and causal filters
Original function Filtered with n=1, f0=20 Hz
1

0.8 0.2

Amplitude

Amplitude
0.6 0.15

0.4 0.1

0.2 0.05

0
0 1 2 3 4 5 0 0.2 0.4 0.6 0.8 1
Time (s) Time (s)
Filtered with n=4, f0=20 Hz Filtered with n=9, f0=20 Hz
0.2 0.2

0.15 0.15
Amplitude

Amplitude
0.1 0.1

0.05 0.05

0 0

0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1


Time (s) Time (s)

When the phase of a filter is set to zero (and simply the amplitude spectrum is
inverted) we obtain a zero-phase filter. It means a peak will not be shifted.

Such a filter is acausal. Why?

29
Filtering Computational Geophysics and Data Analysis
Butterworth Low-pass (20 Hz) on spike

Butterworth n=1, f0=20 Hz Butterworth n=4, f0=20 Hz

Filter amplitude

Filter amplitude
1 1

0.5 0.5

0 0
0 50 100 0 50 100
Frequency (Hz) Frequency (Hz)
Butterworth n=9, f0=20 Hz Butterworth n=16, f0=20 Hz
Filter amplitude

Filter amplitude
1 1

0.5 0.5

0 0
0 50 100 0 50 100
Frequency (Hz) Frequency (Hz)

30
Filtering Computational Geophysics and Data Analysis
(causal) Butterworth Low-pass (20 Hz) on spike

Original function Filtered with n=1, f0=20 Hz


1
Amplitude

Amplitude
0.5 0.2

0 0
0 5 0.5 0 1
Time (s) Time (s)
Filtered with n=4, f0=20 Hz Filtered with n=9, f0=20 Hz
0.2
0.2
Amplitude

0.1Amplitude
0.1
0
0
0 0.5 1 0 0.5 1
Time (s) Time (s)

31
Filtering Computational Geophysics and Data Analysis
Butterworth Low-pass (20 Hz) on data

-6
x 10 Original function -6
x 10 Filtered with n=2, f0=0.5 Hz
1
5
0.5
Amplitude

Amplitude
0 0

-0.5
-5
-1
40 45 50 55 60 65 40 45 50 55 60 65
Time (s) Time (s)
-6
x 10 Filtered with n=2, f0=2.5 Hz -6
x 10 Filtered with n=2, f0=4.5 Hz

2
2
1
Amplitude

Amplitude
0 0
-1
-2
-2

40 45 50 55 60 65 40 45 50 55 60 65
Time (s) Time (s)

32
Filtering Computational Geophysics and Data Analysis
Other windowing functions

 So far we only used the Butterworth filtering


window
 In general if we want to extract time windows
from (permanent) recordings we have other
options in the time domain.
 The key issues are
 Do you want to preserve the main maxima at the
expense of side maxima?
 Do you want to have as little side lobes as posible?

33
Filtering Computational Geophysics and Data Analysis
Example

34
Filtering Computational Geophysics and Data Analysis
Possible windows

Plain box car (arrow stands for Fourier transform):

1, t  M sin 2fM


wR (t )    WR ( f )  2M
0, t  M 2fM
Bartlett

 t  2
1  , t  M  sin 2fM 
wR (t )   M  WB ( f )  M  
 0, t  M   fM 

35
Filtering Computational Geophysics and Data Analysis
Possible windows

Hanning
1 t 
 (1  cos ), t  M sin 2fM 1
wH (t )   2 M  WH ( f )  M
 0, t  M 2fM 1  (2fM ) 2
 

The spectral representations of the boxcar,


Bartlett (and Parzen) functions are:

n
 sin 2fM 
W ( f )    n  1,2,4; M T /2
 2fM 

36
Filtering Computational Geophysics and Data Analysis
Examples

37
Filtering Computational Geophysics and Data Analysis
Examples

38
Filtering Computational Geophysics and Data Analysis
The Gabor transform: t-f misfits

phase information: amplitude information:

• can be measured reliably • hard to measure (earthquake


• ± linearly related to Earth structure magnitude often unknown)
• physically interpretable • non-linearly related to structure

1 
û( , t) : G(u) 
2π  
u( ) g(τ  t) e i dτ

[ t- representation of synthetics, u(t) ]

1 
û 0 ( , t) : G(u 0 ) 
2π 
u 0 ( ) g(τ  t) e i dτ

[ t- representation of data, u0(t) ]

39
Filtering Computational Geophysics and Data Analysis
The Gabor time window

The Gaussian time windows is given by

40
Filtering Computational Geophysics and Data Analysis
Example

41
Filtering Computational Geophysics and Data Analysis
Multitaper

Goal: „obtaining a spectrum with little or no bias and small uncertainties“.


problem comes down to finding the right tapering to reduce the bias (i.e,
spectral leakage).

In principle we seek:

This section follows Prieto eet al., GJI, 2007. Ideas go back to a paper
by Thomson (1982).

42
Filtering Computational Geophysics and Data Analysis
Multi-taper Principle

• Data sequence x is multiplied by a set of orthgonal


sequences (tapers)
• We get several single periodograms (spectra) that are
then averaged
• The averaging is not even, various weights apply
• Tapers are constructed to optimize resistance to spectral
leakage
• Weighting designed to generate smooth estimate with
less variance than with single tapers

43
Filtering Computational Geophysics and Data Analysis
Spectrum estimates

We start with

with

To maintain total power.

44
Filtering Computational Geophysics and Data Analysis
Condition for optimal tapers

N is the number of points, W is the resolution bandwith (frequency increment)

One seeks to maximize l the fraction of energy in the interval (–W,W). From
this equation one finds a‘s by an eigenvalue problem -> Slepian function

45
Filtering Computational Geophysics and Data Analysis
Slepian functions

The tapers (Slepian


functions) in time and
frequency domains

46
Filtering Computational Geophysics and Data Analysis
Final assembly

Slepian sequences (tapers)

Final averaging of spectra

47
Filtering Computational Geophysics and Data Analysis
Example
Signal Corrupted with Zero-Mean Random Noise
8

-2

-4

-6
0 5 10 15 20 25 30 35 40 45 50
time (milliseconds)

48
Filtering Computational Geophysics and Data Analysis
Classical Periodogram
Single-Sided Amplitude Spectrum of y(t)
1.4

1.2

0.8
|Y(f)|

0.6

0.4

0.2

0
0 50 100 150 200 250 300 350 400 450 500
Frequency (Hz)

49
Filtering Computational Geophysics and Data Analysis
… and its power …

1
Single-Sided Power Spectrum of y(t)
10

0
10

-1
10

-2
10
|Y(f)|

-3
10

-4
10

-5
10

-6
10
0 50 100 150 200 250 300 350 400 450 500
Frequency (Hz)

50
Filtering Computational Geophysics and Data Analysis
… multitaper spectrum …

Power Spectral Density


0

-20

-40
Power/frequency (dB/Hz)

-60

-80

-100

-120

-140

-160
0 50 100 150 200 250 300 350 400 450 500
Frequency (Hz)

51
Filtering Computational Geophysics and Data Analysis
Wavelets – the principle

Motivation:

Time-frequency analysis
Multi-scale approach
„when do we hear what frequency?“

52
Filtering Computational Geophysics and Data Analysis
Continuous vs. local basis functions

53
Filtering Computational Geophysics and Data Analysis
54
Filtering Computational Geophysics and Data Analysis
Some maths

A wavelet can be defined as


1 / 2 t b
 (t )  a
a ,b
 
 a 

With the transform pair:


1  xb
W ( f )( a, b) 
a  f (t ) a dt
 
f (t )  C   f ,  a,b  a,b (t )a 2 dadb
 

55
Filtering Computational Geophysics and Data Analysis
56
Filtering Computational Geophysics and Data Analysis
Resulting wavelet representation

57
Filtering Computational Geophysics and Data Analysis
Shifting and scaling

58
Filtering Computational Geophysics and Data Analysis
59
Filtering Computational Geophysics and Data Analysis
Application to seismograms

http://users.math.uni-potsdam.de/~hols/DFG1114/projectseis.html
60
Filtering Computational Geophysics and Data Analysis
Graphical comparison

61
Filtering Computational Geophysics and Data Analysis
Summary

 Filtering is not necessarily straight forward, even the


fundamental operations (LP, HP, BP, etc) require some thinking
before application to data.

 The form of the filter decides upon the changes to the


waveforms of the time series you are filtering

 For seismological applications filtering might drastically


influence observables such as travel times or amplitudes

 „Windowing“ the signals in the right way is fundamental to


obtain the desired filtered sequence

62
Filtering Computational Geophysics and Data Analysis
63
Filtering Computational Geophysics and Data Analysis

Вам также может понравиться