ieee-eurasip workshop on nonlinear signal and image processing, grado (i), june 9-11, 2003 on...

Post on 18-Dec-2015

226 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

IEEE-EURASIP Workshop on Nonlinear Signal and Image Processing, Grado (I), June 9-11, 2003

On Empirical Mode Decomposition

and its Algorithms

G. Rilling, P. Flandrin (Cnrs - Éns Lyon, France)

P. Gonçalvès (Inria Rhône-Alpes, France)

outline

• Empirical Mode Decomposition (EMD) basics

• examples

• algorithmic issues

• elements of performance evaluation

• perspectives

basic idea

• « multimodal signal = fast oscillations on the top of slower oscillations »

• Empirical Mode Decomposition (Huang)– identify locally the fastest oscillation – substract to the signal and iterate on the

residual – data-driven method, locally adaptive and

multiscale

Huang’s algorithm

• compute lower and upper envelopes from interpolations between extrema– substract mean envelope from signal– iterate until mean envelope = 0 and

#{extrema} = #{zero-crossings} ± 1

• substract the obtained Intrinsic Mode Function (IMF) from signal and iterate on residual

how EMD works

tone

chirp

tone + chirp

10 20 30 40 50 60 70 80 90 100 110 120

-2

-1

0

1

2

IMF 1; iteration 0

10 20 30 40 50 60 70 80 90 100 110 120

-2

-1

0

1

2

IMF 1; iteration 0

10 20 30 40 50 60 70 80 90 100 110 120

-2

-1

0

1

2

IMF 1; iteration 0

10 20 30 40 50 60 70 80 90 100 110 120

-2

-1

0

1

2

IMF 1; iteration 0

10 20 30 40 50 60 70 80 90 100 110 120

-2

-1

0

1

2

IMF 1; iteration 0

10 20 30 40 50 60 70 80 90 100 110 120

-2

-1

0

1

2

IMF 1; iteration 0

10 20 30 40 50 60 70 80 90 100 110 120

-2

-1

0

1

2

IMF 1; iteration 0

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

IMF 1; iteration 1

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

IMF 1; iteration 1

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

IMF 1; iteration 1

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

IMF 1; iteration 1

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

IMF 1; iteration 1

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

IMF 1; iteration 1

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

IMF 1; iteration 2

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

IMF 1; iteration 2

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

IMF 1; iteration 2

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

IMF 1; iteration 2

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

IMF 1; iteration 2

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1.5

-1

-0.5

0

0.5

1

1.5

IMF 1; iteration 2

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

IMF 1; iteration 3

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

IMF 1; iteration 4

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

IMF 1; iteration 5

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

IMF 1; iteration 6

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

IMF 1; iteration 7

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

IMF 1; iteration 8

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

IMF 2; iteration 0

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

IMF 2; iteration 1

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

IMF 2; iteration 2

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

IMF 2; iteration 3

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

IMF 2; iteration 4

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

IMF 2; iteration 5

10 20 30 40 50 60 70 80 90 100 110 120

-1

-0.5

0

0.5

1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

IMF 3; iteration 0

10 20 30 40 50 60 70 80 90 100 110 120

-0.4

-0.2

0

0.2

0.4

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.4

-0.2

0

0.2

0.4

IMF 3; iteration 1

10 20 30 40 50 60 70 80 90 100 110 120

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

IMF 3; iteration 2

10 20 30 40 50 60 70 80 90 100 110 120-0.3

-0.2

-0.1

0

0.1

0.2

0.3residue

10 20 30 40 50 60 70 80 90 100 110 120-0.3

-0.2

-0.1

0

0.1

0.2

0.3IMF 3; iteration 3

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

IMF 3; iteration 4

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

IMF 3; iteration 5

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

IMF 3; iteration 6

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

IMF 3; iteration 7

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

IMF 3; iteration 8

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

IMF 3; iteration 9

10 20 30 40 50 60 70 80 90 100 110 120-0.2

-0.1

0

0.1

0.2residue

10 20 30 40 50 60 70 80 90 100 110 120-0.2

-0.1

0

0.1

0.2IMF 3; iteration 10

10 20 30 40 50 60 70 80 90 100 110 120-0.2

-0.1

0

0.1

0.2residue

10 20 30 40 50 60 70 80 90 100 110 120-0.2

-0.1

0

0.1

0.2IMF 3; iteration 11

10 20 30 40 50 60 70 80 90 100 110 120-0.2

-0.1

0

0.1

0.2residue

10 20 30 40 50 60 70 80 90 100 110 120-0.2

-0.1

0

0.1

0.2IMF 3; iteration 12

10 20 30 40 50 60 70 80 90 100 110 120-0.2

-0.1

0

0.1

0.2residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.5

0

0.5

IMF 4; iteration 0

10 20 30 40 50 60 70 80 90 100 110 120

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

IMF 4; iteration 1

10 20 30 40 50 60 70 80 90 100 110 120

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

IMF 4; iteration 2

10 20 30 40 50 60 70 80 90 100 110 120-0.3

-0.2

-0.1

0

0.1

0.2

0.3residue

10 20 30 40 50 60 70 80 90 100 110 120-0.3

-0.2

-0.1

0

0.1

0.2

0.3IMF 4; iteration 3

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

IMF 4; iteration 4

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

IMF 4; iteration 5

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

IMF 4; iteration 6

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

IMF 4; iteration 7

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

IMF 4; iteration 8

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

IMF 4; iteration 9

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

IMF 4; iteration 10

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

IMF 4; iteration 11

10 20 30 40 50 60 70 80 90 100 110 120-0.2

-0.1

0

0.1

0.2residue

10 20 30 40 50 60 70 80 90 100 110 120-0.2

-0.1

0

0.1

0.2IMF 4; iteration 12

10 20 30 40 50 60 70 80 90 100 110 120-0.2

-0.1

0

0.1

0.2residue

10 20 30 40 50 60 70 80 90 100 110 120-0.2

-0.1

0

0.1

0.2IMF 4; iteration 13

10 20 30 40 50 60 70 80 90 100 110 120-0.2

-0.1

0

0.1

0.2residue

10 20 30 40 50 60 70 80 90 100 110 120-0.2

-0.1

0

0.1

0.2IMF 4; iteration 14

10 20 30 40 50 60 70 80 90 100 110 120-0.2

-0.1

0

0.1

0.2residue

10 20 30 40 50 60 70 80 90 100 110 120-0.2

-0.1

0

0.1

0.2IMF 4; iteration 15

10 20 30 40 50 60 70 80 90 100 110 120

-0.15

-0.1

-0.05

0

0.05

0.1

0.15

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.15

-0.1

-0.05

0

0.05

0.1

0.15

IMF 4; iteration 16

10 20 30 40 50 60 70 80 90 100 110 120

-0.15

-0.1

-0.05

0

0.05

0.1

0.15

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

IMF 5; iteration 0

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.2

-0.1

0

0.1

0.2

IMF 5; iteration 1

10 20 30 40 50 60 70 80 90 100 110 120

-0.15

-0.1

-0.05

0

0.05

0.1

0.15

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.15

-0.1

-0.05

0

0.05

0.1

0.15

IMF 5; iteration 2

10 20 30 40 50 60 70 80 90 100 110 120

-0.15

-0.1

-0.05

0

0.05

0.1

0.15

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.15

-0.1

-0.05

0

0.05

0.1

0.15

IMF 5; iteration 3

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

IMF 5; iteration 4

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

IMF 5; iteration 5

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

IMF 5; iteration 6

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

IMF 5; iteration 7

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

IMF 5; iteration 8

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

IMF 5; iteration 9

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

IMF 5; iteration 10

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

residue

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

IMF 5; iteration 11

10 20 30 40 50 60 70 80 90 100 110 120

-0.1

-0.05

0

0.05

0.1

residue

imf1

Empirical Mode Decomposition

imf2

imf3

imf4

imf5

imf6

10 20 30 40 50 60 70 80 90 100 110 120

res.

EMD and AM-FM signals

• quasi-monochromatic harmonic oscillations• self-adaptive time-variant filtering• example : 2 sinus FM + 1 Gaussian wave

packet

0 200 400 600 800 1000 1200 1400 1600 1800 2000-1

-0.5

0

0.5

1

EMD

signal

Empirical Mode Decomposition

imf1

imf2

imf3

imf4

imf5

imf6

imf7

imf8

imf9

res.

time-frequency signature

time

frequency

signal

time-frequency signature

time

frequency

signal

time

frequency

mode #1

time-frequency signature

time

frequency

signal

time

frequency

mode #1

time

frequency

mode #2

time-frequency signature

time

frequency

signal

time

frequency

mode #1

time

frequency

mode #2

time

frequency

mode #3

nonlinear oscillations

• IMF ≠ Fourier mode and, in nonlinear situations, 1 IMF = many Fourier modes

• example : 1 HF triangle + 1 MF tone + 1 LF triangle

100 200 300 400 500 600 700 800 900 1000-2

-1

0

1

2

EMD

signal

Empirical Mode Decomposition

imf1

imf2

imf3

res.

issues

• algorithm ?– intuitive but ad-hoc procedure, not unique– several user-controlled tunings

• performance ?– difficult evaluation since no analytical

definition – numerical simulations

algorithmic issues• interpolation

– type ? cubic splines– border effects ? mirror symmetry

• stopping criteria– mean zero ? 2 thresholds– variation 1 : « local EMD »

• computational burden– about log2 N IMF ’s for N data points

– variation 2 : « on-line EMD »

performance evaluation

• extensive numerical simulations

• deterministic framework– importance of sampling– ability to resolve multicomponent signals

• a complement to stochastic studies– noisy signals + fractional Gaussian noise– PF et al., IEEE Sig. Proc. Lett., to appear

EMD of fractional Gaussian noise

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5

H = 0.2

76 5 4 3 2 1

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5

H = 0.5

76 5 4 3 2 1

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5

H = 0.8

76 5 4 3 2 1

frequency

1. EMD and (tone) sampling

case 1 — oversampling

equal height maxima

constant upper envelope

equal height minima

constant lower envelope

zero mean : tone = IMF

case 2 — moderate sampling

fluctuating maxima

modulated upper envelope

fluctuating minima

modulated lower envelope

non zero mean : tone ≠ IMF

experiment 1

• 256 points tone, with 0 ≤ f ≤1/2

• error = normalized L2 distance comparing tone vs. IMF #1

• minimum when 1/f even multiple of the sampling period

-8 -7 -6 -5 -4 -3 -2 -1-16

-14

-12

-10

-8

-6

-4

-2

0

log2(frequency)

log

2(error)

experiment 2

• 256 points tones, with 0 ≤ f1 ≤1/2 and f2 ≤ f1

• error = weighted normalized L2 distance comparing tone #1 vs. IMF #1, and tone #2 vs. max{IMF #k, k ≥ 2}

f1 > f

2

f 2

a1/a

2 = 1

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

experiment 3

• intertwining of amplitude ratio, sampling rate and frequency spacing

• dominant effect when f1 ≤ 1/4 : constant-Q (wavelet-like) « confusion band »

f1 > f

2

a1/a

2 = 1

f1 > f

2

a1/a

2 = 4

f1 > f

2

a1/a

2 = 1/4

concluding remarks

• EMD is an appealing data-driven and multiscale technique

• spontaneous dyadic filterbank structure in « stationary » situations, stochastic (fGn) or not (tones)

• EMD defined as output of an algorithm: theoretical framework beyond numerical simulations?

(p)reprints, Matlab codes and demos

www.ens-lyon.fr/~flandrin/emd.html

top related