a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k...

42
61 5.3. Anwendungen 5.3.1. Fourierentwicklung: Stückweise stetige, 2π-periodische (in [-π,π]) Funktion f(x) lässt sich als Fourier-Reihe darstellen (vgl. Taylor/Potenz-Reihe): ( ) ( ) = = + + = = −∞ = = −∞ = = k k k k k k k ix k ikx k k k k z c e c e c kx b kx a a x f 1 0 ) sin( ) cos( 2 ) ( a k und b k heißen Fourier-Koeffizienten von f(x) und berechnen sich (wegen der Orhogonalität der Funktionen cos(kx) und sin(kx)) aus = = π π π π π π dx kx x f b dx kx x f a k k ) sin( ) ( 1 , ) cos( ) ( 1

Upload: others

Post on 19-Oct-2019

17 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

61

5.3. Anwendungen

5.3.1. Fourierentwicklung: Stückweise stetige, 2π-periodische (in [-π,π]) Funktion f(x) lässt sich als Fourier-Reihe darstellen (vgl. Taylor/Potenz-Reihe):

( )

( )

==≡

++=

∑ ∑ ∑

∑∞=

−∞=

∞=

−∞=

=

k

k

k

k

kk

kixk

ikxk

kkk

zcecec

kxbkxaaxf1

0 )sin()cos(2

)(

ak und bk heißen Fourier-Koeffizienten von f(x) und berechnen sich (wegen der Orhogonalität der Funktionen cos(kx) und sin(kx)) aus

∫∫−−

==π

π

π

π ππdxkxxfbdxkxxfa kk )sin()(1,)cos()(1

Page 2: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

62

Sie geben die Größe der Anteile von Vielfachen der Grundfrequenz (1/ 2π) an, aus denen sich f zusammensetzt Wellenzahl: k Periode: 2π/k Frequenz: k/(2π) Grundfrequenz für k=1, cos(x): Periode 2π, Frequenz 1/(2π)

(ak,bk) messen Anteil von f zur Frequenz k / (2π), (bzw. Periode 2π/k, oder Wellenzahl k).

Page 3: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

63

π 2π

Schwingung mit Wellenzahl k=1 und k=2 Wellenzahl k=2 entspricht Periode π, bzw. Frequenz 1/π

cos(kx), sin(kx) bilden Orthonormalsystem (Basis)! Fourierreihe entspricht Taylorreihe Für periodische/auf Intervall definierte Funktion

Page 4: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

64

( )∑=

++=n

kkkn kxbkxaaxf

1

0 )sin()cos(2

)(

( ) dxxfxfxfxf nn ∫−

−=−π

π

22

2)()()()(

Satz: Das trigonometrische Polynom

stellt die optimale Approximation an die Funktion f dar aus dem Vektorraum der trigonometrischen Polynome vom Grad n:

ist minimal.

Page 5: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

65

.,2,0 ππππ =+−=−= nj xn

jxx

(

)

∑∑

=

=

=

−−

+

=

=

+−=

=++

++−−⋅⋅≈

≈=

1

0

1

0

1

0

11

11

2sin)()sin(22cos)()cos(2

)2(cos)(2

)cos()(21)cos()(

)cos()()cos()(2121

)cos()(1

n

jj

n

jj

n

jj

nn

k

nkjxfk

nnkjxfk

n

njkxf

n

kfkxxf

kxxfkfn

dxkxxfa

ππππ

ππ

ππ

ππππ

π

π

π

Näherungsweise Berechnung der Fourierkoeffizienten aus dem Integral mittels Trapezregel und äquidistanten Stützstellen

Page 6: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

66

∑∑∑−

=

=

=

⋅+

=

1

0

1

0

1

0

2sin)(2cos)(2exp)(n

jj

n

jj

n

jj n

kjxfinkjxf

nkjixf πππ

Daher ergeben sich die ak näherungsweise aus den Real- und Imginärteilen von

Diese Werte erhält man aus der IDFT angewendet auf die Funktionswerte an den Stützstellen. Genauso lassen sich die bk annähern. Also können mittels DFT auf den Vektor der Funktionswerte die Frequenzanteile von f näherungsweise bestimmen werden.

DFT transformiert Funktionswerte in Koeffizienten

Page 7: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

67

Wolferzahl für die Jahre 1700 bis 2000

5.3.2. MATLAB-Analyse der Sonnenaktivität: Sonnenflecken treten alle 11 Jahre verstärkt auf. Seit 1700 wird die jährliche Sonnenfleckenaktivität beschrieben durch die sog. Wolfer-Zahl (Größe und Anzahl der Flecken) (Rudolf Wolf ca. 1850).

Page 8: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

68

Wolferzahlen in Vektor v als Funktionswerte einer unbekannten periodischen Funktion g mit den Jahreszahlen als Stützstellen. Gesamtbeobachtungszeitraum T besteht aus 300 Jahren. Ersetze daher Intervall [0,2π] durch das Intervall [0,T] durch den Übergang von exp(ikx) exp(ikx*2π/300)

Zeitintervall ∆ = 1 Jahr, in dem eine Wolferzahl bestimmt wurde; N = T / ∆ ist Anzahl der Beobachtungsintervalle = = Länge des Vektors v = Anzahl der Stützstellen; Wellenzahl wieder k , Periode T/k = 300J./k, Frequenz k/T; Grundfrequenz also 1/T.

Page 9: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

69

Es können nur periodische Vorgänge erfasst werden mit einer Periode > 2∆ = 2 Jahre, da bei kleineren Perioden die ‚Schwingung’ feiner als die feinste Unterteilung ( 1 Jahr) wäre, und daher als solche nicht erkennbar ist.

Daher ist die größte beobachtbare Wellenzahl k gleich N/2=150, entspricht der Frequenz (N/2)(1/T)=1/(2∆), der sog. Nyquist-Frequenz

Berechne y = FFT(v) y(0) ist die Gesamtsumme aller Wolferzahlen und wird gleich 0 gesetzt (enthält keine Angabe über Periodizität).

Gibt es Schwingungen, die nicht erkannt werden können?

Page 10: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

70

Die anderen Koeffizienten von y enthalten die Größe der ver- schiedenen Frequenzanteile von g (aber als komplexe Zahlen). Berechne 2/,...,1)()( 2 Nkfürkykp ==

p(k) misst die Größe der k-ten Vielfachen der Grundfrequenz, also der Frequenz f(k) = k / T = k / (∆N) für k=1,2,...,N/2 Anders ausgedrückt bestimmt p(k) das Gewicht der Periode 1 / f(k) = T / k in der Funktion f.

also untersuche nur die Beträge der Frequenzanteile bis zur Nyquist-Wellenzahl k = (N/2).

Page 11: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

71

Wir tragen nun den Vektor p auf gegen die dazugehörigen Perioden T/k, k=1,...,N/2

Betragsquadrate der Fourierkoeffizienten, aufgetragen über die dazugehörigen Perioden. Wir können den Zyklus von 11 Jahren direkt ablesen.

Page 12: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

72

Allgemeines Problem: In welcher Form stellt man numerische Daten dar? Normalerweise aus Messwerten: Samples f(xj) Dies entspricht einer Darstellung im Ortsraum. Nachteil: Viele Daten, schlecht komprimierbar, keine Analyse!

Besser: Übergang zu einer Darstellung bzgl. geeigneter Basisfunktionen (z.B. xj, exp(jx), cos(jx),...) Dann reichen ev. wenige Koeffizienten aus, um das Signal (fast) vollständig zu beschreiben. Außerdem kann man aus den Koeffizienten Schlüsse über das Verhalten der Funktion ziehen (Frequenzanalyse).

Page 13: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

73

Beispiel: f(x) = 0.5*sin(x) + 0.1 * sin(10x)

Zwei Koeffizienten reichen aus zur Beschreibung Die Koeffizienten bezeichnet man auch als Beschreibung der Funktion im Phasenraum (Frequenzraum)

Page 14: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

74

5.3.3. JPEG: Bilder werden üblicherweise als Matrix gespeichert, deren Einträge pixelweise den Grauwert des entsprechend nummerierten Pixels enthalten, bzw. bei Farbbildern den Anteil einer der drei Farbkomponenten Rot, Grün oder Blau (= RGB).

Warum DCT, warum nicht DFT?

RGB wird meist in der YUV-Form umgewandelt, bei der die Matrix Y die Helligkeit beschreibt, und U und V den Farbton (U,V lassen sich stärker komprimieren!).

JPEG zerlegt das Bild in 8 x 8 – Pixel große Blöcke, die zunächst getrennt bearbeitet werden. Auf jede dieser Teilmatrizen wird eine zweidimensionale Cosinus-Transformation angewandt: DCT

Bilddaten sind reell, und das Bild ist nicht periodisch!

Page 15: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

75

Aus Anwendung der DCT erhält man für die Teilmatrizen wieder die Frequenzanteil-koeffizienten ak und bk in Teilmatrizen. Die Teilmatrix mit den Frequenzanteilen wird nun quantisiert,d.h. die darin stehenden reellen Zahlen werden bestimmten Zahlenintervallen zugeordnet und Intervallweise jeweils durch eine Zahl angenähert, die für ein ganzes Intervall gilt.

Dadurch werden auch automatisch alle kleinen Komponenten, die in dem ersten Intervall mit den kleinsten Werten liegen, durch Null ersetzt. Dies erzeugt einen Qualitätsverlust!

Die entstandene Gesamtmatrix aus den diskreten Zahlenwerten wird codiert – Huffman-Codierung

Page 16: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

76

Nachteile: Fourier-Methoden haben Schwierigkeiten mit Kanten in Bildern Kanten Unstetigkeiten Durch stetige Funktionen cos(kx), sin(kx) sind Kanten schlecht darstellbar! Differenzierbarkeit! Kosten der DCT: O(n log(n)) bei n Pixel. Zu teuer. Daher DCT auf 8x8-Blöcke.

JPEG2000: Anstatt Cosinus-Transformation auf 8 x 8 wendet man eine Wavelet-Transformation auf größere Teilmatrizen an. Wavelet-Ansatzfunktionen haben keine Problem mit Kanten, vgl. B-Splines. Genauere Untersuchung folgt später. Kosten für Wavelet-Transformation O(n)

Page 17: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

77

Beispiel: MATLAB Gibbs-Phänomen (recht.m) Fourierkoeffizienten für Rechtecksignal; Überschwingen an Kante unvermeidbar bei Darstellung durch endliches trigonometrisches Polynom!

Page 18: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

78

5.3.4. Lineare Filter: Betrachte Vektor v, dessen Komponenten wieder diskrete Werte einer Funktion oder eines Bildes darstellen (Sampling). Zunächst 1-dimensional. Wir filtern diesen Vektor, indem wir jede Komponente ersetzen durch eine gewichtete Kombination der Nachbarkomponenten.

bzw. der Matrixmultiplikation

[ ]12141 ,

42 11 +− ++

= jjjj

vvvvder Operation

So entspricht die Maske:

Page 19: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

79

vv ⋅

21121

12112

41

010141010

81 ,

84 ,11,,,11,

,jijijijiji

ji

vvvvvv ++−− ++++

=

Im zwei-dim. entspricht dies z.B. der Maske

Vorsicht am Rand! Fehlende Werte haben Einfluß auf Messwerte! Man benötigt Annahmen für v0 und vn+1. Was ist sinnvoll?

Page 20: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

80

Genauso Gaussfilter:

121242121

161

Dies entspricht glättenden Filtern, die zu einem weicheren Bild führen: Mittelwertfilter, Glätter, Weichzeichner, oder Tiefpassfilter zur Abschwächung von Rauschen, bzw. hochfrequenten Anteilen. Hochfrequente Störungen, die einzelne Komponente verändern, werden durch die Mittelwertbildung verringert!

Entsprechend kann man Hochpassfilter definieren, die die Unterschiede hervorheben, das Bild härter machen und niederfrequente (glatte) Anteile abschwächen (Differenzfilter, Scharfzeichner).

Page 21: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

81

z.B. Laplacefilter: (Sobelfilter) ,

010141

010

−−−

Bisher entsprechen die Methoden einer Filterung im Ortsraum. Im Gegensatz dazu kann man auch Filter im Phasenraum (Frequenz~) zum Entfernen von Rauschen (Noise) verwenden: v DFT(v) Filter IDFT(v) Also Transformation in (Fourier-)Koeffizientenraum, dann Filtern der Koeffizienten = Gewichten/Löschen, dann Rücktransformation (vgl. MP3) Hochpassfilter, Tiefpass, Filterband,…

010101010

Page 22: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

82 Differenzfilter Reduktion

Filtern von Lena: Original Mittelwertfilter Reduktion

Page 23: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

83

[ ] 2/11 [ ] 2/11 −

5.3.5. Wavelets: Betrachte Kombination von Tiefpassfilter und Hochpassfilter im 1-Dimensionalen zu Masken

und

vvv

h

t ⋅

−−

=

1111

1111

21

Ersetze den ursprünglichen Vektor verlustfrei durch tief-, bzw. hochpass-gefilterte Vektoren halber Länge (down sampling):

oder

Page 24: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

84

v⋅

1111

1111

1111

21

Der Differenzanteil vh ist in der Regel klein und wird nicht weiterbearbeitet! Der Mittelwertanteil (tiefpassgefiltert) vt wird nach demselben Schema weiteraufgespalten wiederum in Tief/Hochpassanteil durch dieselben Masken.

(nur anders sortiert)

Page 25: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

85

Ersetze nun den Ausgangsvektor v∈Rn durch den letzten Mittelwertanteil auf Level p und sämtliche Differenzanteile vh , das sind auch genau n Zahlen. ( vh und vt entsprechen quasi den Fourierkoeffizienten)

Insgesamt:

vt vh Level p , 1

v Level 0 , Länge n

vt vh Level 1 , n/2

vt vh Level 2 , n/4

. . .

Page 26: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

86

Vorteile: Gesamtkosten der Transformation O(n) Differenz-Anteile meist klein gut komprimierbar Differenzanteil auf Level k enthält Information über das Verhalten von v auf diesem Level, bzw. in dieser Auflösung

Filter müssen sparse sein damit billig, leicht umkehrbar (invertierbar) damit Original rekonstruierbar! (vgl. DFT und IDFT ) Aufspalten in Frequenzanteil (hoch – tief).

Multiskalenanalyse, Zerlegung des Vektors in verschiedene Frequenzbereiche = Skalen Entspricht in etwa der Fourier-Analyse

Page 27: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

87

[ ]1121 [ ]11

21

Algorithmische Ähnlichkeit zur Fourier-Transformation am Beispiel des Haar-Filters mit den Masken

und :

u (u+v)/2

Butterfly v (u-v)/2

Page 28: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

v1 (v0-v1)/2

v4 (v4+v5)/2 (v4+v6)/2 (v0-v4)/2

v3 (v2-v3)/2

v7 (v6-v7)/2

v6 (v6+v7)/2 (v4-v6)/2

v2 (v2+v3)/2 (v0-v2)/2

v0 (v0+v1)/2 (v0+v2)/2 (v0+v4)/2

88

v5 (v4-v5)/2

Page 29: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

x0

x1

x2

x3

x4

x5

x6

x7

(x0 +x1)/2

(x0 - x1)/2

(x2 +x3)/2

(x2 – x3)/2

(x4 +x5)/2

(x4 – x5)/2

(x6 +x7)/2

(x6 – x7)/2

(x0 +x2)/2

(x0 – x2)/2

(x4 – x6)/2

(x4 +x6)/2

(x0 +x4)/2

(x0 – x4)/2

Page 30: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

90

v wird dabei transformiert in alle Differenzanteile und den letzten Mittelwert. Unterschied zur DFT: keine Sortierphase, einfacher Butterfly, nur die Mittelwertanteile werden weiter bearbeitet O(n)

Page 31: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

91

Ergänzung: Funktionsansatz: Erinnerung: lineare B-Splines (Hut-Funktion)

Φ(x): alle Φ(x-k)

y Φ(x) Φ(x-2)

0 1 2 x

Zur Vereinfachung betrachten wir den konstanten B-Spline (k=0):

y Φ(x) Φ(x-2) Φ(x): alle Φ(x-k)

0 1 2 x

Äquidistante Stützstellen …,-1,0,1,2,…

Page 32: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

92

Φ(x) heißt Skalierungsfunktion und liefert Basis Φ(x-k), k Weiterhin erfüllt Φ(x) die Skalierungsgleichung

Φ(x) = ( 1 ⋅Φ(2x) + 1⋅ Φ(2x-1) ) Stellt die Beziehung her zwischen fein/grob diskretisiert.

Genauso liefern Φ(2x-k) (feinere) Ansatzfunktionen z.B. 1= Φ(0.25) = = ( Φ(2*0.25) + Φ(2*0.25-1) ) = Φ(0.5) = 1 Filter-Maske [ 1 1 ] , denn 1*Φ(2x) + 1*Φ(2x-1) zu Tiefpass-Filter (Mittelwertfilter)

y

Φ(2x): als Umskalierung von Φ(x)

0 0.5 1 2 x

Page 33: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

93

Notwendig ist zweiter Hochpass-Filter (Differenz-Filter). Definiere dazu zur Skalierungsfunktion Φ(x) die eigentliche Waveletfunktion W(x) = 1*Φ(2x) - 1*Φ(2x-1) , Maske [ 1 -1 ]

y

W(x):

0 0.5 1 2 x

∫ =−⋅−Φ 0)()( dxjxWkx

Wichtig: Orthogonalität der Ansatzfunktionen! Warum sind diese Funktionen orthogonal?

Φ(2x-k) sind Basis zu feinerer Diskretisierung und höherer Auflösung (Genauigkeit).

Page 34: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

94

)12()2()()12()2()(

−Φ−Φ=−Φ+Φ=Φ

xxxWxxx

( )( ) 2/)()()12(

2/)()()2(xWxxxWxx

−Φ=−Φ

+Φ=Φ

Mit den obigen Beziehungen kann Φ(2x) eindeutig durch Φ(x) und W(x) dargestellt werden:

oder umgekehrt

Gegeben: f(x) = ∑ ak ⋅ Φ(2x-k) Nun können wir den Übergang von Koeffizienten zur Basis Φ(2x-k) zu Koeffizienten bezgl. Φ(x-k), W(x-k) beschreiben

a2k⋅Φ(2x-2k) a2k⋅( Φ(x-k)+W(x-k) ) / 2 a2k+1⋅Φ(2x-2k-1) a2k+1⋅( Φ(x-k)-W(x-k) ) / 2

Page 35: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

95

( )

( )

)()()()(

)(2

)(2

)()(2

)()(2

)122()22()2()(

)0()0(

)1(12

)1(2

)1(12

)1(2

)1(12

)1(2

)1(12

)1(2

)1(

xfxfkxWbkxa

kxWaakxaa

kxWkxa

kxWkxakxakxa

kxaxf

hochpasstiefpass

kk

kkkk

k

k

kk

k

+=

=∑ −⋅∑ +−Φ⋅=

=∑ −⋅−

∑ +−Φ⋅+

=

=∑ −−−Φ+

∑ +−+−Φ=

=∑ −−Φ∑ +−Φ=

=∑ −Φ=

++

+

+

gerade/ungerade

Page 36: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

96

Anwendung der beiden Filtermasken [ 1 1 ] /2 und [ 1 -1 ] /2 auf die Koeffizienten ak liefert neue Koeffizienten zu hoch/tiefpass-gefilterten Teil-Funktionen.

)()2()122()22(

)122()()22()(

))122()22(())122()22((

)()()()(

)1(

)1(12

)1(2

)0()0(

)0()0(

)0(

)0(

)0()0(

xfkxakxakxa

kxbakxba

kxkxbkxkxa

kxWbkxaxfxf

k

kk

kk

kk

k

k

kk

hochpasstiefpass

∑ =−Φ=

=∑ −−Φ+∑ −Φ=

=∑ −−Φ−+

+∑ −Φ⋅+=

=−−Φ−∑ −Φ+

+∑ −−Φ+−Φ=

=∑ −+−Φ

=+

+

Umgekehrt kann aus den beiden gefilterten Teilfunktionen die Gesamtfunktion f(x) wieder rekonstruiert werden mittels

Page 37: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

97

Also Anwendung der Filter [ 1 1 ] und [ 1 -1 ] auf die Koeffizienten der hoch/tiefpassgefilterten Koeffizienten liefert die Koeffizienten zur feineren Diskretisierung.

Funktionenfamilien auf verschiedenen Skalen: Φ(x-k) , k = ..., -1,0,1,... Φ(2x-k) , k = ..., -1,0,1,... .... Φ(2jx-k) , k = ..., -1,0,1,... , j = ...,-1,0,1,...

Page 38: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

98

Basisumrechnung von f(x):

)()1(

)1(

1111

1111

21 j

jk

jk a

ba

=

Φ(2jx-k)

Φ(2j-1x-k) W(2j-1x-k)

beschrieben durch die Transformation der Koeffizienten:

entsprechend Tief- und Hochpassfilter mit Haar-Filter.

Page 39: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

99

Umkehrung mit

= −

)1(

)1()(

1111

1111

jk

jkj

ba

a

Rekursive Wiederholung: a(j)

a(j-1) b(j-1)

a(j-2) b(j-2)

. . a(0) b(0)

Page 40: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

100

Wavelet als Verschmelzung der klassischen Filter und Fourieranalyse mit der Idee lokaler Basisfunktionen wie bei den B-Splines. Haar-Filter Haar-Wavelet

Page 41: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

101

Page 42: a ( ) f x = + + a kx b kx k k 2 ∑ ∑ ∑ ( ) - in.tum.de · k n kj k f x n n kj k f x n n f x k j n f x kx f k f k f x kx n a f x kx dx π π π π π π π π π π π π π π

102

Fourier-Analyse Multiskalen-Analyse FFT Wavelet cos(kx), sin(kx) W(2jx-m), Φ(2jx-m) Skalierung k Shift m, Skalierung 2j Alle gleichberechtigt Mittelwert/Differenz globaler Träger lokaler Träger

keine Variations- Wahl von Approximations- möglichkeit güte und Diff’barkeit Kantenproblem Lokal, adaptiv Volle Rekursion Rekursion nur im Mittelwert Kosten O(n log(n)) Kosten O(n) Frequenz aus Frequenz aus Fourierkoeffizienten Waveletkoeffizienten