Bergh · Ekstedt · Lindberg Wavelets mit Anwendungen in Signal- und Bildbearbeitung
Jöran Bergh · Fredrik Ekstedt Martin Lindberg
Wavelets mit Anwendungen in Signal- und Bildbearbeitung Aus dem Englischen übersetzt von Manfred Stern Mit 85 Abbildungen
123
Jöran Bergh
Martin Lindberg
Matematiska vetenskaper Chalmers tekniska högskola och Göteborgs universitet SE-41296 Göteborg, Sverige E-mail:
[email protected]
AlgoTrim AB Anckargripsgatan 3 SE-21119 Malmö, Sverige E-mail:
[email protected]
Fredrik Ekstedt
Übersetzer
Fraunhofer-Chalmers Centrum för Industrimatematik Chalmers Teknikpark SE-41288 Göteborg, Sverige E-mail:
[email protected]
Manfred Stern Kiefernweg 8 06120 Halle, Deutschland E-mail:
[email protected]
Originalversion mit dem Titel Wavelets in englischer Sprache erschienen bei Studentlitteratur, Lund, Sweden, 1999 © Jöran Bergh, Fredrik Ekstedt, Martin Lindberg and Studentlitteratur 1999 Diese Übersetzung von Wavelets wurde in Vereinbarung mit ,,Studentlitteratur AB“ veröffentlicht.
Bibliografische Information der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar.
Mathematics Subject Classification (2000): 42C40, 65T60, 94A12, 42-01
ISBN 978-3-540-49011-1 Springer Berlin Heidelberg New York Dieses Werk ist urheberrechtlich geschützt. Die dadurch begründeten Rechte, insbesondere die der Übersetzung, des Nachdrucks, des Vortrags, der Entnahme von Abbildungen und Tabellen, der Funksendung, der Mikroverfilmung oder der Vervielfältigung auf anderen Wegen und der Speicherung in Datenverarbeitungsanlagen, bleiben, auch bei nur auszugsweiser Verwertung, vorbehalten. Eine Vervielfältigung dieses Werkes oder von Teilen dieses Werkes ist auch im Einzelfall nur in den Grenzen der gesetzlichen Bestimmungen des Urheberrechtsgesetzes der Bundesrepublik Deutschland vom 9. September 1965 in der jeweils geltenden Fassung zulässig. Sie ist grundsätzlich vergütungspflichtig. Zuwiderhandlungen unterliegen den Strafbestimmungen des Urheberrechtsgesetzes. Springer ist ein Unternehmen von Springer Science+Business Media springer.de © Springer-Verlag Berlin Heidelberg 2007 Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, daß solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften. Text und Abbildungen wurden mit größter Sorgfalt erarbeitet. Verlag und Autor können jedoch für eventuell verbliebene fehlerhafte Angaben und deren Folgen weder eine juristische Verantwortung noch irgendeine Haftung übernehmen. Umschlaggestaltung: WMXDesign GmbH, Heidelberg Herstellung: LE-TEX Jelonek, Schmidt & Vöckler GbR, Leipzig Satz: Datenerstellung durch die Autoren unter Verwendung eines Springer TEX-Makropakets Gedruckt auf säurefreiem Papier 46/3180YL - 5 4 3 2 1 0
Vorwort
K¨ onnen Sie sich nicht irgendwo nach etwas Geld umsehen?“ sagte Dilly. ” Mr Dedalus dachte nach und nickte. Ja, das werde ich tun, sagte er w¨ urdevoll. ” Ich habe schon den ganzen Rinnstein in der O’Connell Street abgesucht. Ich werde es jetzt hier versuchen.“ James Joyce, Ulysses
Warum noch ein Buch u ¨ ber Wavelets? Wir meinen, daß es sich bei den gegenw¨ artigen B¨ uchern u ¨ber Wavelets im Großen und Ganzen entweder um Monographien oder um Handb¨ ucher handelt. Unter einer Monographie verstehen wir einen umfassenden Text mit vollst¨ andigen Quellenangaben, unter einem Handbuch hingegen eine bloße Sammlung von Rezepten oder Algorithmen.1 Wir versp¨ urten deswegen den Bedarf an einer Interpolation, das heißt, an einem nicht allzu anspruchsvollen Text f¨ ur diejenigen Leser, die sich mit den grundlegenden mathematischen Ideen und Techniken der Wavelet-Analyse ¨ vertraut machen m¨ ochten, sich aber gleichzeitig einen gewissen Uberblick dar¨ uber verschaffen wollen, in welchen Zusammenh¨angen und wie die Theorie derzeit angewendet wird. Wir wenden uns an Leser mit den mathematischen Vorkenntnissen h¨oherer Studienjahre: wir setzen Kenntnisse u ¨ ber Anwendungen der linearen Algebra, der Fourierreihen und der Fourierschen Integrale voraus. Zum besseren Verst¨ andnis der Theorie ist jedoch auch die Kenntnis der Konvergenzresultate f¨ ur (Lebesguesche) Integrale w¨ unschenswert. Diese Anforderungen an die Vorkenntnisse stellen uns folglich vor ein Dilemma. Mathematische Ausf¨ uhrungen sollten pr¨azise sein, aber eine u ¨ bertrieben gewissenhafte Beachtung der Pr¨ azision stellt zu starke Anforderungen an die Leser, die uns vorschweben. 1
Dar¨ uber hinaus sind auch einige B¨ ucher erschienen, die sich an eine nicht spezialisierte Leserschaft richten.
VI
Vorwort
Unsere L¨ osung dieses Dilemmas bestand darin, einige mathematische Details wegzulassen und stattdessen den Leser auf umfassendere Darstellungen zu verweisen. Unser Ziel war, die Schl¨ usselideen und die grundlegenden Techniken in den Mittelpunkt zu r¨ ucken. Diese Absicht f¨ uhrte uns zu dem Kompromiß, der Ihnen jetzt vorliegt. Bei der Auswahl des Stoffes kann man mit ziemlicher Sicherheit anders und m¨ oglicherweise auch besser vorgehen. Wir haben da gewiß auch Fehler gemacht. Jedenfalls w¨ aren wir f¨ ur Verbesserungsvorschl¨age jeglicher Art sehr dankbar. G¨oteborg, Januar 1999
J¨oran Bergh Fredrik Ekstedt Martin Lindberg
Zum Inhalt Das Buch besteht aus zwei Teilen: im ersten Teil stellen wir die Theorie dar, im zweiten Teil werden Anwendungen behandelt. Von grundlegender Wichtigkeit sind die Kapitel u anke und Multi-Skalen-Analyse. Die nachfol¨ ber Filterb¨ genden Kapitel bauen auf diesen beiden Kapiteln auf und k¨onnen unabh¨angig voneinander gelesen werden. In der Einleitung schildern wird einige der grundlegenden Ideen und Anwendungen. ¨ Im theoretischen Teil pr¨ ufen geben wir zuerst einen Uberblick u ¨ ber die Grundlagen der Signalverarbeitung. Danach schließen sich Ausf¨ uhrungen u ¨ ber Filterb¨ anke an. Das wichtigste Kapitel dieses Teils behandelt die Multi-SkalenAnalyse und Wavelets. Der erste Teil schließt mit Kapiteln u ¨ ber h¨oherdimensionale Wavelets, Lifting und die kontinuierliche Wavelet-Transformation. Im Anwendungsteil geben wir zuerst einige der am besten bekannten Waveletbasen an. Danach diskutieren wir adaptive Basen, Kompression und Unterdr¨ uckung von Rauschen sowie Waveletmethoden, u.a. zur numerischen Behandlung von partiellen Differentialgleichungen. Abschließend beschreiben wir die Differenzierbarkeit in Waveletdarstellungen, eine Anwendung der kontinuierlichen Wavelet-Transformation, Feature-Extraktion und einige Implementationsfragen.
Vorwort
VII
Am Ende der meisten Kapitel steht ein Abschnitt mit Vorschl¨agen zur weiterf¨ uhrenden Literatur. Diese Vorschl¨ age sind als Ausgangspunkt f¨ ur inhaltliche Vertiefungen und/oder zur Erlangung eines besseren mathematischen Verst¨ andnisses gedacht.2 ¨ Wir haben u eingestreut, um den Text zu erg¨anzen ¨ berall Ubungsaufgaben und dem Leser die M¨ oglichkeit zu geben, selbst zu rechnen und dadurch sein Wissen zu festigen.
2
¨ Der Ubersetzer dankt Frau Karin Richter (Martin Luther Universit¨ at Halle, Institut f¨ ur Mathematik) f¨ ur fachliche Hinweise, Herrn Frank Holzwarth (SpringerVerlag) f¨ ur TEX-nische Hilfe, Herrn Gerd Richter (Angersdorf) f¨ ur technischen Support, Frau Ute McCrory (Springer-Verlag) und Frau Andrea K¨ ohler (Le-TEX, Leipzig) f¨ ur Hinweise zur Herstellung der Endfassung.
Inhaltsverzeichnis
1
Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1 Haar-Wavelet und Approximation . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 Beispiel einer Wavelet-Transformation . . . . . . . . . . . . . . . . . . . . . . 5 1.3 Fourier vs Wavelet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.4 Fingerabdr¨ ucke und Bildkompression . . . . . . . . . . . . . . . . . . . . . . 12 1.5 Unterdr¨ uckung von Rauschen (Denoising) . . . . . . . . . . . . . . . . . . 13 1.6 Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Teil I Theorie 2
Signalverarbeitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1 Signale und Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Die z-Transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Die Fourier-Transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4 Linearer Phasengang und Symmetrie . . . . . . . . . . . . . . . . . . . . . . . 2.5 Vektorr¨ aume . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6 Zweidimensionale Signalverarbeitung . . . . . . . . . . . . . . . . . . . . . . . 2.7 Sampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
17 17 20 22 25 27 29 30
3
Filterb¨ anke . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1 Zeitdiskrete Basen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Die zeitdiskrete Haar-Basis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Die Subsampling-Operatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4 Perfekte Rekonstruktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5 Konstruktion von Filterb¨ anken . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6 Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33 33 36 39 41 45 48
4
Multi-Skalen-Analyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 4.1 Projektionen und Basen in L2 (R) . . . . . . . . . . . . . . . . . . . . . . . . . . 49 4.2 Skalierungsfunktionen und Approximation . . . . . . . . . . . . . . . . . . 55
X
Inhaltsverzeichnis
4.3 4.4 4.5 4.6 4.7 4.8
Wavelets und Detail-R¨ aume . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Orthogonale Systeme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Die diskrete Wavelet-Transformation . . . . . . . . . . . . . . . . . . . . . . . Biorthogonale Systeme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Approximation und verschwindende Momente . . . . . . . . . . . . . . . Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
61 66 71 74 78 80
5
Wavelets in h¨ oheren Dimensionen . . . . . . . . . . . . . . . . . . . . . . . . . 5.1 Die separable Wavelet-Transformation . . . . . . . . . . . . . . . . . . . . . 5.2 Zweidimensionale Wavelets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3 Nichtseparable Wavelets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4 Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
83 83 89 93 98
6
Das 6.1 6.2 6.3 6.4 6.5
Lifting-Schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 Die Grundidee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 Faktorisierungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 Lifting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 Implementierungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
7
Die 7.1 7.2 7.3 7.4
kontinuierliche Wavelet-Transformation . . . . . . . . . . . . . . . . 111 Einige grundlegende Fakten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Globale Regularit¨ at . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 Lokale Regularit¨ at . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Teil II Anwendungen 8
Wavelet-Basen: Beispiele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 8.1 Regularit¨ at und verschwindende Momente . . . . . . . . . . . . . . . . . . 119 8.2 Orthogonale Basen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 8.3 Biorthogonale Basen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 8.4 Wavelets ohne kompakten Tr¨ ager . . . . . . . . . . . . . . . . . . . . . . . . . . 134 8.5 Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
9
Adaptive Basen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 9.1 Zeit-Frequenz-Zerlegungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 9.2 Wavelet-Pakete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 9.3 Entropie und Best-Basis-Auswahl . . . . . . . . . . . . . . . . . . . . . . . . . . 148 9.4 Lokale trigonometrische Basen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 9.5 Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Inhaltsverzeichnis
XI
10 Kompression und Unterdr¨ uckung von Rauschen . . . . . . . . . . . 157 10.1 Bildkompression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 10.2 Denoising . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 10.3 Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 11 Schnelle numerische lineare Algebra . . . . . . . . . . . . . . . . . . . . . . . 171 11.1 Modellprobleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 11.2 Diskretisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 11.3 Die Nichtstandardform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 11.4 Die Standardform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 11.5 Kompression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 11.6 Multilevel-Iterationsmethoden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 11.7 Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 12 Funktionalanalysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 12.1 Differenzierbarkeit und Wavelet-Darstellung . . . . . . . . . . . . . . . . 181 12.2 Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 13 Ein 13.1 13.2 13.3
Analysewerkzeug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 Zwei Beispiele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 Ein numerischer Sometime Shortcut“ . . . . . . . . . . . . . . . . . . . . . 190 ” Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
14 Feature-Extraktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 14.1 Der Klassifikator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 14.2 Lokale Diskriminantenbasen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 14.3 Diskriminantenmaße . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 14.4 Der LDB-Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 14.5 Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 15 Implementierungsfragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 15.1 Signale endlicher L¨ ange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 15.2 Pr¨ a- und Post-Filterung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 15.3 Bemerkungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 Literaturverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 Sachverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
1 Einleitung
Der Leser m¨ oge hier zum Beispiel an ein von einem Mikrofon aufgezeichnetes Tonsignal denken. Wir weisen auf diese Eselsbr¨ ucke“ hin, denn f¨ ur die ” meisten Menschen ist es hilfreich, an eine spezifische konkrete Anwendung zu denken, wenn sie sich mit unbekannten mathematischen Begriffen vertraut machen m¨ ochten. In dieser Einleitung versuchen wir, eine erste n¨aherungsweise Antwort auf die untenstehenden Fragen zu geben, einige Vergleiche mit den klassischen Fourier-Methoden anzustellen und einige grundlegende Beispiele zu geben. In den danach folgenden Kapiteln wollen wir diese Fragen dann ausf¨ uhrlicher beantworten.
Was sind Wavelets und wann sind sie nu ¨ tzlich? Wavelets k¨ onnen als Erg¨ anzung zu den klassischen Methoden der FourierZerlegung aufgefaßt werden. Klassisch kann ein Signal (eine Funktion) in seine (ihre) unabh¨angigen Fourier-Modi zerlegt werden, wobei jeder Modus eine andere Frequenz, aber keine spezifische zeitliche Lokalisierung hat. Alternativ kann das Signal in seine unabh¨angigen Wavelet-Modi zerlegt werden, wobei jeder Modus haupts¨ achlich zu einem Frequenzband geh¨ort und eine bestimmte zeitliche Lokalisierung hat. (Das h¨angt mit der gefensterten Fourier-Transformation zusammen, ist aber von dieser verschieden.) Somit ersetzt die Wavelet-Zerlegung die scharf definierte Frequenz der Fourier-Zerlegung durch eine zeitliche Lokalisierung. Wir definieren die Fourier-Transformierte einer Funktion f durch ∞ f (t)e−iωt dt = f, eiω· f (ω) = −∞
wobei f, g =
f (t)g(t) dt.
2
1 Einleitung
Unter gewissen milden Voraussetzungen f¨ ur die Funktion f haben wir sowohl eine Fourier-Zerlegung ∞ 1 f, eiω· eiωt dω f (t) = 2π −∞ als auch eine Wavelet-Zerlegung f (t) =
∞
j,k=−∞
f, ψj,k ψj,k (t),
wobei die ψj,k (t) = 2j/2 ψ(2j t − k) s¨ amtlich Verschiebungen (Translationen) und Streckungen (Dilatationen) ein und derselben Funktion ψ sind. Im Allgemeinen ist die Funktion ψ sowohl im Zeitbereich als auch im Fre quenzbereich mehr oder weniger lokalisiert und mit ψ(t) dt = 0 besteht eine Ausl¨ oschungsforderung/Oszillationsforderung. Ist ψ im Zeitbereich gut lokalisiert, dann muß die Funktion im Frequenzbereich weniger gut lokalisiert sein – ein Umstand, der auf die folgende Ungleichung zur¨ uckzuf¨ uhren ist (die mit der Heisenbergschen Unsch¨ arferelation der Quantenmechanik zusammenh¨angt): 1/2 1/2 2 2 −1 2 (1.1) |ψ(t)| dt ≤ 2 |tψ(t)| dt . (2π) |ω ψ(ω)| dω Grob gesprochen handelt es sich dabei um die Beitr¨age 1 f, eiω· eiωt dω 2π Ij bzw.
∞
f, ψj,k ψj,k (t)
k=−∞
des Frequenzbandes (Oktavbandes) Ij = {ω; 2j−1 +2j−2 < |ω/π| < 2j +2j−1 }. In der letztgenannten Summe wird jeder Term bei t = 2−j k lokalisiert, falls ψ(t) bei t = 0 lokalisiert wird. Der Frequenzinhalt von ψj,k wird bei ω = 2j π lokalisiert, falls die Funktion ψ ihren Frequenzinhalt haupts¨achlich in einer Umgebung von ω = π hat. (Man beachte: ψ(t) dt = 0 bedeutet ψ(0) = 0.) F¨ ur das in Abbildung 1.1 gezeigte Haar-Wavelet ist der Modul der Fourier-Transformierten gleich 4(sin ω/4)2 /ω, ω > 0, was diesen Sachverhalt illustriert. Im Gegensatz hierzu haben die harmonischen Bestandteile eiωt in der Fourier-Darstellung eine scharfe Frequenz ω und u ¨ berhaupt keine zeitliche Lokalisierung. ur irgendein ω im gegebenen Frequenzband Ij gest¨ort, Wird also f, eiω· f¨ dann wird dadurch f¨ ur alle Zeiten das Verhalten beeinflußt. ort, dann beeinflußt dieser Umstand das Wird umgekehrt f, ψj,k gest¨ Verhalten haupts¨ achlich im gegebenen Frequenzband Ij und haupts¨achlich in oße, die mit 2−j vergleichbar ist. einer Umgebung von t = 2−j k durch eine Gr¨
1.1 Haar-Wavelet und Approximation
3
¨ Ubungsaufgaben zu Abschnitt 1.0 ¨ Ubungsaufgabe 1.1. Beweisen Sie die Ungleichung (1.1) unter Verwendung der Identit¨ at ψ(t) = D(tψ(t)) − tDψ(t) mit anschließender partieller Integration sowie mit Hilfe der Cauchy-Schwarzschen Ungleichung |f, g| ≤ f g , wobei f durch f =
∞
−∞
2
|f (t)| dt
1/2
definiert ist.
1.1 Haar-Wavelet und Approximation Die Wavelet-Entwicklung konvergiert unter gewissen milden Voraussetzungen gegen eine gegebene Funktion. Die allgemeine Strategie bei unserer vorliegenden Illustration besteht darin, zuerst die Approximation der gegebenen Funktion durch die Skalierungsfunktion auf einer gewissen hinreichend feinen Skala anzugeben (wobei wir nicht darauf eingehen, in welchem Sinne es sich um eine Approximation handelt). Danach dr¨ ucken wir die so gew¨ahlte Approximationsfunktion durch das Wavelet aus. Unsere Darstellung liefert auch ein Argument daf¨ ur, warum man eine Wavelet-Entwicklung einer gegebenen Funktion durch Wavelets ausdr¨ uckt, die alle das Integral 0 haben, obwohl dieser Sachverhalt auf den ersten Blick widerspr¨ uchlich erscheint. Wir betrachten das Haar-Wavelet-System in einem einfachen Fall. Das Haar-Wavelet und die entsprechende Haarsche Skalierungsfunktion sind die Funktionen ψ bzw. ϕ in Abb. 1.1. Beide Funktionen sind außerhalb des Intervalls (0, 1) gleich 0. Man beachte die beiden fundamentalen Skalierungsrelationen, welche die Funktionen auf einer Skala durch die Skalierungsfunktion ϕ auf der halbierten Skala ausdr¨ ucken: ϕ(t) = ϕ(2t) + ϕ(2t − 1) ψ(t) = ϕ(2t) − ϕ(2t − 1). Nun sind ϕ und ψ ebenso wie auch {ϕ(t − k)}k und {ψ(t − k)}k mit dem Skalarprodukt f, g := f (t)g(t) dt orthogonal. Es sei f (t) = t2 f¨ ur 0 < t < 1 und ansonsten sei f (t) = 0. Wir k¨ onnen die Funktion f durch ihre Mittelwerte u ¨ ber den dyadischen Interur j = 2 ist das in Abb. 1.2 zu vallen k 2−j , (k + 1)2−j approximieren. F¨ sehen.
4
1 Einleitung 1.5
1.5
1
1
0.5
0.5
0
0
0.5
0.5
1
1
1.5 1
0
1
1.5 1
2
0
1
2
Abb. 1.1. Die Funktionen ϕ (links) und ψ (rechts)
Die Approximationen sind ganzzahlige Verschiebungen (Translate) der gestreckten (dilatierten) Skalierungsfunktionen. Der zweite Mittelwert von links ist f, 2ϕ(22 · 2 − 1) =
1
0
t2 2ϕ(22 t − 1) dt,
wobei die dilatierte Skalierungsfunktion normalisiert ist, damit ihr quadratisches Integral gleich 1 wird. Offensichtlich wird diese Approximation mit wachsendem j besser und w¨ ahlt man j hinreichend groß (hinreichend feine Skala), dann kann die Approximation (in L2 ) beliebig genau gemacht werden.
1
0.8
0.6
0.4
0.2
0
0.2 0.2
0
0.2
0.4
0.6
0.8
1
Abb. 1.2. Die Funktion und ihre gew¨ ahlte Treppen-Approximation
1.2 Beispiel einer Wavelet-Transformation
5
Zum Zweck der Veranschaulichung beginnen wir mit dem (willk¨ urlich gew¨ ahlten) Approximationsfall j = 2, wie in Abb.1.2 dargestellt. Nun kommt ein entscheidender Schritt. Wir k¨ onnen die approximierende Treppenfunktion durch ihre Mittelwerte u ¨ber den dyadischen Intervallen doppelter L¨ange 2−(j−1) = 2−1 ausdr¨ ucken und gleichzeitig die Differenz zwischen den beiden approximierenden Treppenfunktionen aufzeichnen. Man beachte, daß die Differenz durch das Haar-Wavelet auf derselben verdoppelten Skala in Abb. 1.3 ausgedr¨ uckt wird.
1
1 0.8 0.6
0.5
0.4 0.2
0
0 0.2
0
0.5
1
0
0.5
1
Abb. 1.3. Die ersten beiden aufeinanderfolgenden Mittelwerte und Differenzen bei verdoppelten Skalen
Wir k¨ onnen dieses Verfahren beliebig oft wiederholen. Wenn wir Mittelwerte u ange 2j , j ≤ 0, nehmen, dann ist nur ein Wert ¨ ber den Intervallen der L¨ j von 0 verschieden, n¨ amlich 2 /3 (vgl. Abb. 1.4). Dementsprechend strebt der Anteil der Wavelet-Entwicklungen in diesen Skalen f¨ ur j → −∞ gegen 0 (in L2 ).
1.2 Beispiel einer Wavelet-Transformation Wir haben die in Abb. 1.5 dargestellte Funktion (ziemlich willk¨ urlich) zu” sammengeklebt“. Die Funktion besteht aus einem sinusartigen Anteil, einem konstanten Treppenanteil und einem parabolischen Anteil. Die Funktion wird dann auf der linksstehenden Darstellung von Abb. 1.6 in unabh¨ angige (orthogonale) Teile zerlegt (Multi-Skalen-Zerlegung), wobei jeder Teil im Wesentlichen (aber nicht exakt) in einer Frequenzoktave liegt. Auf der rechtsstehenden Darstellung sind die entsprechenden Wavelet-Koeffizienten zu sehen. Die horizontalen Achsen sind die Zeitachsen. Die unterste graphische Darstellung stellt die obere H¨ alfte des verf¨ ugbaren Frequenzbereiches dar, die danach folgende graphische Darstellung stellt die obere H¨alfte der verbleibenden unteren H¨ alfte des Frequenzbereiches dar und so weiter.
6
1 Einleitung
1
0.8
0.6
0.4
0.2
0
0.2
0.4
0
0.5
1
1.5
2
Abb. 1.4. Die dritten aufeinanderfolgenden Mittelwerte und Differenzen
1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 0.2
0
0.2
0.4
0.6
0.8
Abb. 1.5. Die gegebene Funktion
1
1.3 Fourier vs Wavelet
7
Multi Resolution Decomposition 2 4
Dyad
4 6
6
8
8
10
10 0
0.5 t
1
0
0.5 t
1
Abb. 1.6. Die Zerlegung (links) und die Koeffizienten (rechts)
¨ Man beachte, daß die scharfen Anderungen der Funktion in den Aufl¨osungen deutlich sichtbar sind. Die entsprechende graphische Darstellung des Fourier-Spektrums weist lediglich Frequenzspitzen auf. Verwendet man Zeitfenster und f¨ uhrt man Fourier-Transformationen f¨ ur jedes Fenster durch, dann erkennt man die gleichen Eigenschaften wie bei der Multi-Skalen-Zerlegung, aber die Wahl der richtigen Fenstergr¨ oße erfordert im Allgemeinen zus¨atzliche Informationen. Dar¨ uber hinaus ist die Anzahl der Operationen im Multi-Skalen-Algorithmus linear bez¨ uglich der Sample-Anzahl des Signals, wo die schnelle FourierTransformation einen zus¨ atzlichen logarithmischen Faktor hat.
1.3 Fourier vs Wavelet Wir betrachten nun ein gesampeltes Signal mit den Werten (0, 0, 1, 0) und Periode 4. Wir vergleichen die algorithmischen Implementierungen der diskreten Fourier-Transformation mit den Wavelet-Methoden und ihren ent¨ sprechenden Frequenz-Baubl¨ ocken. In Ubungsaufgabe 1.4 geben wir an, wie eine Translation die entsprechenden Transformationen beeinflußt: F¨ ur die Fourier-Transformation erhalten wir einen Phasenfaktor und f¨ ur die WaveletTransformation ist der Effekt einer Translation im Allgemeinen nicht offensichtlich. Aus der Sicht der Fourier-Analyse k¨ onnen f¨ ur diese Folge die Werte der Funktion x(t) = 1/4 − 1/2 cos πt/2 + 1/4 cos πt an ganzzahligen Stellen genommen werden, das heißt, die diskrete FourierFolge ist (1/4, −1/4, 1/4, −1/4), wobei das erste Element 1/4 der Mittelwert der urspr¨ unglichen Folge ist. Diese Werte werden nach der Standardmethode ungliche Folge): berechnet ((xn )3n=0 ist die urspr¨
8
1 Einleitung
Xk = 1/4
3
xn e−2πikn/4 (k = 0, 1, 2, 3).
n=0
Aus der Sicht der Haar-Wavelet-Analyse ist die Sample-Folge in der Funktion x(t) = 0 ϕ(t) + 0 ϕ(t − 1) + 1 ϕ(t − 2) + 0 ϕ(t − 3) codiert, wobei ϕ(t) = 1 (0 < t < 1) und = 0 f¨ ur andere Werte von t. In Abb. 1.7 sind also die Sample-Werte rechts neben ihren entsprechenden Indizes auf der horizontalen t-Achse abgebildet.
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0
0.2
0
1
2
3
4
0.2
0
1
2
3
4
Abb. 1.7. Fourier-Darstellung (links) und Haar-Darstellung (rechts)
Wir zeigen jetzt, wie die verschiedenen Frequenzb¨ander zu den (verschiedenen) Funktionen beitragen. Die Fourier-Komponente mit der h¨ ochsten Frequenz ist 1/4 cos πt. Die Haar-Wavelet-Komponente mit der h¨ ochsten Frequenz ergibt sich folgendermaßen1 : ⎡ ⎤
0
⎥ 1 −1 0 0 ⎢ ⎢0⎥ = 0 . 0 0 1 −1 ⎣ 1 ⎦ 1 0
Hierdurch wird paarweise die Differenz zwischen den benachbarten Elementen gemessen und die resultierende Folge ist in der Funktion Gx(t) = 0 ψ(t/2) + 1 ψ(t/2 − 1) codiert, die einen Hochfrequenzanteil darstellt, wobei ψ(t) = 1 ϕ(2t) − 1 ϕ(2t − 1) 1
Zur Vereinfachnung der Schreibweise haben wir den Normalisierungsfaktor 21/2 ¨ unterdr¨ uckt (vgl. Ubungsaufgabe 1.2).
1.3 Fourier vs Wavelet
9
das Haar-Wavelet ist. Die beiden Koeffizienten ±1 sind hier die von Null verschiedenen Eintr¨ age in der Filtermatrix. Diese beiden Komponenten sind in Abb. 1.8 dargestellt; die Lokalisierung ist hierbei in der Haar-Komponente offensichtlich, aber in der Fourier-Komponente unklar.
1
1
0.5
0.5
0
0
0.5
0.5 0
1
2
3
4
0
1
2
3
4
Abb. 1.8. Fourier-Komponente (links) und Haar-Komponente (rechts)
Die entsprechende Mittelwerte werden analog berechnet: ⎡ ⎤
0
⎥ 1100 ⎢ ⎢0⎥ = 0 . 0 0 1 1 ⎣1⎦ 1 0
Das ist in der Funktion
Hx(t) = 0 ϕ(t/2) + 1/2 ϕ(t/2 − 1) codiert, die den entsprechenden Niederfrequenzanteil darstellt, der in Abb. 1.9 zu sehen ist. (Der Faktor 1/2 anstelle der erwarteten 1 ist auf die oben genann¨ ten unterdr¨ uckten Normalisierungsfaktoren zur¨ uckzuf¨ uhren (vgl. Ubungsaufgabe 1.2).) Bezeichnet man die obengenannten Filtermatrizen mit denselben Buchstaben G und H sowie ihre Adjungierten mit G∗ bzw. H ∗ , dann l¨aßt sich Folgendes leicht u ufen (I bezeichnet die Einheitsmatrix und O die Null¨ berpr¨ matrix): G∗ G + H ∗ H = 2I GH ∗ = HG∗ = O HH ∗ = GG∗ = 2I. Die erste Gleichung zeigt, daß wir die urspr¨ ungliche Folge aus den in Gx und Hx codierten Folgen rekonstruieren k¨ onnen, und die mittleren beiden Gleichungen besagen, daß die Funktionen Gx und Hx orthogonal sind. (Man
10
1 Einleitung
1
0.8
0.6
0.4
0.2
0
0.2
0
0.5
1
1.5
2
2.5
3
3.5
4
Abb. 1.9. Die entsprechende mittlere Komponente (Niederfrequenz-Komponente) Hx
beachte, daß die codierten Folgen nicht an sich orthogonal sind, sondern daß es sich um eine Orthogonalit¨ atsrelation zwischen den Spalten von G und den Spalten von H handelt). F¨ ur die n¨ achsth¨ ohere Frequenz ist die Fourier-Komponente −1/2 cos πt/2. (Die Folge ist reellwertig und deswegen ist X1 die komplexe Konjugierte von X−1 = X3 .) Die entsprechende Haar-Wavelet-Komponente wird aus den Mittelwerten des vorhergehenden Levels berechnet:
0 1 −1 = −1 1
Hierdurch wird die Differenz zwischen (benachbarten Paaren von) Mittelwerten gemessen. Die resultierende Folge ist in der Funktion −1/4 ψ(t/4) ¨ codiert (Normalisierungsfaktor unterdr¨ uckt; vgl. Ubungsaufgabe 1.2). Der Sachverhalt ist in Abb. 1.10 dargestellt. Die entsprechenden Mittelwerte werden ebenfalls aus den Mittelwerten des vorhergehenden Levels berechnet:
0 11 = 1 . 1 Dieser Sachverhalt ist in der Funktion (0 < t < 4) ϕ(t/4) ≡ 1
1.3 Fourier vs Wavelet
1
1
0.5
0.5
0
0
0.5
11
0.5 0
1
2
3
4
0
1
2
3
4
Abb. 1.10. Die n¨ achsth¨ ohere Fourier-Komponente (links) und die n¨ achsth¨ ohere Haar-Komponente (rechts)
1
0.8
0.6
0.4
0.2
0
0.2
0
0.5
1
1.5
2
2.5
3
3.5
4
Abb. 1.11. Das Mittel bei der Fourier-Darstellung und bei der Haar-Darstellung
¨ codiert und stellt somit den Mittelwert 1/4 (vgl. Ubungsaufgabe 1.2) der urspr¨ unglichen Folge in Abb. 1.11 dar. Die Wavelet-Analyse l¨ aßt sich als sukzessives Verfahren auffassen, bei dem man Mittelwerte und Differenzen auf einer doppelten Skala betrachtet, die Differenzen aufzeichnet und den Prozeß mit den Mittelwerten wiederholt. Man kann das solange wiederholen, bis die Mittelwerte auf einer Skala betrachtet werden, die vergleichbar ist mit der L¨ ange der urspr¨ unglichen Folge dividiert durch die Filterl¨ ange. Beim obigen Beispiel erhielten wir im letzten Schritt exakt den Mittelwert, denn die L¨ ange des Haar-Filters ist 2: der Filter wird durch die beiden von Null verschiedenen Eintr¨ age in jeder Zeile der Matrizen G und H repr¨ asentiert.
12
1 Einleitung
¨ Ubungsaufgaben zu Abschnitt 1.3 ¨ Ubungsaufgabe 1.2. Zeigen Sie, daß die korrekten Werte auftreten, wenn man die normalisierten Funktionen in den codierenden Darstellungen w¨ahlt: zum Beispiel, wenn man die normalisierte Funktion 21/2 ψ(2t − 1) anstelle von ψ(2t − 1) w¨ ahlt. Normalisiert“ bedeutet, daß das Integral der quadrierten ” Funktion gleich 1 ist (d.h. die L2 -Norm ist 1). ¨ Ubungsaufgabe 1.3. Vergleichen Sie den FFT-Algorithmus2 und die obige Haar-Wavelet-Transformation im Hinblick darauf, auf welche Weise die Nichtlokalit¨ at und die Lokalit¨ at der entsprechenden Transformation in Erscheinung treten. Der Sachverhalt wird bereits im Vier-Punkt-Fall offensichtlich. ¨ Ubungsaufgabe 1.4. Was geschieht, wenn ein anderes Segment gew¨ahlt wird, das heißt, wenn die vier Samples (0, 0, 0, 1) sind und x0 = x1 = x2 = 0, x3 = 1. Vergleichen Sie den Einfluß auf die Fourier-Darstellung und auf die Wavelet-Darstellung.
1.4 Fingerabdru ¨ cke und Bildkompression Die Speicherung von Fingerabdr¨ ucken in einem leicht zug¨anglichen Archiv bedeutet, daß die Bilder elektronisch und in digitaler Form gespeichert werden m¨ ussen. Die Grauwertskala des Bildes kann als Funktion g(x, y) zweier Variabler aufgefaßt werden. Nat¨ urlich muß diese Funktion g in Bildelemente (Pixel) gesampelt werden, wodurch sie auf einer ebenen Anordnung von beispielsweise 512 × 512 Punkten definiert ist. Diese 512 × 512 Grauskalenwerte mit einem Bereich von vielleicht 64 verf¨ ugbaren Schattierungen (wie in ur nur einen Fingerabdruck. Abb. 1.12) ergeben dann 29+9+3 ≈ 2 Mbytes f¨ K¨ onnte die Anzahl der erforderlichen Bits beispielsweise auf 1% reduziert ¨ werden, dann w¨ aren Speicherung, Retrieval3 und Ubermittlung offenbar sehr viel kosteng¨ unstiger. Tats¨ achlich f¨ uhrt das Federal Bureau of Investigation (FBI) in den USA gegenw¨ artig eine derartige Reduktion oder Kompression der FingerabdruckInformationen unter Verwendung einer Wavelet-Technik durch. Der Erfolg ¨ dieser Technik h¨ angt von der F¨ ahigkeit der Wavelets ab, lokale Anderungen in einer Funktion (Bild) zu entdecken und zu codieren und genau das ist es, was die Information des Fingerabdrucks ausmacht: das individuelle Muster der Hautfurchen an den Fingerspitzen in Abb. 1.12. Ein verwandtes Problem ist die effiziente Kompression von Bildsignalen, ¨ zum Beispiel zur Erleichterung der o von Bildern in ¨ffentlichen Ubermittlung Echtzeit u ber das Internet. Algorithmen f¨ u r diese Kompression werden ge¨ genw¨ artig kommerziell entwickelt. 2 3
FFT = fast Fourier transform (schnelle Fourier-Transformation). Wiederauffinden gespeicherter Daten.
1.5 Unterdr¨ uckung von Rauschen (Denoising)
13
Abb. 1.12. Aus einer digitalen Grauwertskalen-Darstellung erzeugter Fingerabdruck
1.5 Unterdru ¨ckung von Rauschen (Denoising) Eine weitere erfolgreiche Anwendung von Wavelet-Techniken ist das Denoising von Signalen, das heißt, die Unterdr¨ uckung von Rauschen. Dieser Vorgang ist in gewissem Sinne mit der – im vorhergehenden Abschnitt beschriebenen – Bildkompression durch Wavelets verwandt. Betrachtet man zum Beispiel weißes Rauschen, dann denkt man sich dieses u ¨blicherweise als stochastischen Prozeß, der durch ein flaches FourierKraftspektrum realisiert wird. Sind die Wavelets als orthonormale Basis unabh¨ angig, dann u agt sich das auf die analoge Eigenschaft der Wavelet¨bertr¨ Koeffizienten. Weiß man also, daß es sich bei dem zu unterdr¨ uckenden Rauschen um weißes Rauschen handelt, dann ist ein einfaches Thresholding der Wavelet-Koeffizienten ein in der Praxis erfolgreiches Verfahren. (Thresholding bedeutet, daß s¨ amtliche Wavelet-Koeffizienten unterhalb der gew¨ahlten Schwelle gleich 0 gesetzt werden.)
14
1 Einleitung
1.6 Bemerkungen Die Wavelet-Analyse wird seit knapp zwei Jahrzehnten in der Praxis der Signal/Bild-Verarbeitung eingesetzt. Die meisten mathematischen Ideen, in Bezug auf die sich die Wavelet-Analyse von der klassischen Fourier-Analyse unterscheidet, sind weniger als hundert Jahre alt. Ein Hauptgrund f¨ ur das Interesse der angewandten Mathematiker an Wavelets sind die zunehmenden M¨ oglichkeiten, Berechnungen schnell und mit immer leistungsst¨ arkeren Computern durchzuf¨ uhren. ¨ Historische Uberblicke findet man in den B¨ uchern von Meyer [24], [23], Daubechies [11], Kahane & Lemari´e [21]. Mit Ausnahme von [24] geben diese B¨ ucher eine relativ vollst¨ andige und detaillierte mathematische Behandlung der Theorie. Die beiden B¨ ucher Hubbard [19] und Meyer [24] wenden sich, ebenso wie ¨ der Ubersichtsartikel von Jawerth und Sweldens [20], an einen gr¨oßeren Leserkreis.4 Es gibt auch B¨ ucher mit anderen Schwerpunkten. Wir nennen hier die B¨ ucher von Strang und Nguyen [27] (Signalverarbeitung), von Hern´ andez und Weiss [16] (Techniken der Fourier-Transformation), von Chui [7] [8] (Splines, Signalverarbeitung) und von Mallat [22] (Signalverarbeitung).5 Informationen im Internet Im Internet gibt es viel Material u ¨ ber Wavelets. Insbesondere gibt es die Zeitschrift Wavelet Digest, die (kostenlos) abonniert werden kann, und die Wavelet Toolbox in Matlab. Wir verweisen den Leser auf die URL-Adresse http://www.wavelet.org
4
5
Zus¨ atzlich zu den englischsprachigen Quellen nennen wir auch die beiden folgenden deutschsprachigen Werke: W. B¨ ani, Wavelets. Eine Einf¨ uhrung f¨ ur Ingenieure, 2., u ¨ berarbeitete Auflage, Oldenbourg (2005), sowie A.K. Louis, P. Maaß und A. Rieder, Wavelets: Theorie und Anwendungen, Teubner Studienb¨ ucher Mathematik, 2., u ¨ berarbeitete und erweiterte Auflage (1998). Hierbei handelt es sich um keine vollst¨ andige Liste.
2 Signalverarbeitung
¨ In diesem Kapitel geben wir einen Uberblick u ¨ber das Standardmaterial der zeitdiskreten Signalverarbeitung. Die hier eingef¨ uhrten Begriffe werden durchgehend in Kapitel 3 im Zusammenhang mit Filterb¨anken verwendet. Zeitstetige Signale (oder Funktionen) werden in Kapitel 4 behandelt, wenn wir Wavelets diskutieren. Der erste Abschnitt definiert zeitdiskrete Signale und Filter. Hieran schließen sich zwei Abschnitte u ¨ ber die Fourier-Transformation und die z-Transformation sowie u ¨ ber deren Anwendung auf die Filtertheorie an. Danach folgt ein Abschnitt u ¨ ber Filter mit linearem Phasengang und symmetrische Filter, die sp¨ ater bei unserer Untersuchung der symmetrischen Wavelet-Basen eine wichtige Rolle spielen werden. Wir schließen das Kapitel ¨ mit einem Uberblick u aume, zweidimensionale Signalverarbeitung ¨ ber Vektorr¨ und u ¨ ber das Sampling von zeitstetigen Signalen.
2.1 Signale und Filter Ein zeitdiskretes Signal x ist eine Folge von reellen oder komplexen Zahlen x = (xk )∞ k=−∞ = (. . . , x−1 , x0 , x1 , . . . ). In den meisten F¨ allen sind unsere Signale reellwertig, aber aus Gr¨ unden der Allgemeinheit setzen wir voraus, daß sie komplexwertig sind. Mathematisch gesprochen ist ein Signal dann eine Funktion x : Z → C. Dar¨ uber hinaus gilt f¨ ur ein Signal x ∈ ℓ2 (Z), falls es eine endliche Energie hat, das heißt, 2 falls k |xk | < ∞. Im n¨ achsten Kapitel sprechen wir ausf¨ uhrlicher u ¨ ber den 2 Raum ℓ (Z) und zeitdiskrete Basen. Ein Filter H ist ein Operator, der ein Eingabesignal x auf ein Ausgabesignal y = Hx abbildet; diese Situation wird oft durch ein Blockdiagramm dargestellt (vgl. Abb. 2.1). Ein Filter H ist linear , wenn er die folgenden beiden Bedingungen f¨ ur alle Eingabesignale x und y sowie f¨ ur alle Zahlen a erf¨ ullt:
18
2 Signalverarbeitung x
y
H
Abb. 2.1. Blockdiagramm eines Filters
(2.1a) (2.1b)
H(x + y) = Hx + Hy, H(ax) = aHx.
Ein einfaches Beispiel f¨ ur einen linearen Filter ist der Delay-Operator D, der das Eingabesignal x einer Verschiebung von einem Schritt unterwirft. Eine Verschiebung von n Schritten wird mit Dn bezeichnet und ist folgendermaßen definiert: y = Dn x ⇔ yk = xk−n , f¨ ur alle k ∈ Z. F¨ ur einen zeitinvarianten (oder verschiebungsinvarianten) Filter erzeugt eine Verschiebung bei der Eingabe eine entsprechende Verschiebung bei der Ausgabe. F¨ ur alle Eingabesignale x haben wir demnach H(Dx) = D(Hx). Das heißt, der Operator H ist mit dem Delay-Operator vertauschbar: HD = DH. Hieraus folgt auch, daß der Filter invariant gegen¨ uber einer beliebigen Verschiebung von n Schritten ist: H(Dn x) = Dn (Hx). Wir nehmen nun an, daß H ein linearer und zeitinvarianter Filter (LTIFilter1 ) ist. Es sei h die Ausgabe oder die Antwort, wenn die Eingabe der Einheitsimpuls ist: 1 f¨ ur k = 0, δk = 0 andernfalls, das heißt, h = Hδ. Die Folge (hk ) heißt die Impulsantwort des Filters. Da der Filter zeitinvariant ist, haben wir Dn h = H(Dn δ). Schreiben wir also das Eingabesignal x des Filters formal als x = · · · + x−1 D−1 δ + x0 δ + x1 Dδ + · · · = xn Dn δ n
und verwenden wir die Tatsache, daß der Filter linear ist, dann k¨onnen wir das Ausgabesignal y = Hx in der folgenden Form schreiben: y = H( xn Dn δ) = xn H(Dn δ) =
n
1
n
n
n
xn D h =: h ∗ x.
L = linear, TI = time-invariant.
2.1 Signale und Filter
19
Hier haben wir einen neuen Operator eingef¨ uhrt, n¨amlich die Faltung von h und x, die folgendermaßen definiert ist: (2.2) y = h ∗ x ⇔ yk = xn (Dn h)k = xn hk−n . n
n
Hieraus schlußfolgern wir, daß ein LTI-Filter durch seine Impulsantwort eindeutig bestimmt ist, und daß die Ausgabe y immer als Faltung der Eingabe x und der Impulsantwort h geschrieben werden kann: (2.3)
y = Hx = h ∗ x.
Das zeigt, wie die Eigenschaften der Linearit¨ at und der Zeitinvarianz die Definition der Faltung motivieren. In der Literatur ist es u ¨ blich, die Bedeutung des Wortes Filter auf einen Operator zu beschr¨anken, der sowohl linear als auch zeitinvariant ist; der Begriff Operator wird f¨ ur den allgemeineren Fall verwendet. Ein Filter mit endlicher Impulsantwort (FIR-Filter2 ) hat nur endlich viele von Null verschiedene Koeffizienten. Ist ein Filter kein FIR-Filter, dann wird er als Filter mit unendlicher Impulsantwort (IIR-Filter3 ) bezeichnet. Ein LTI-Filter ist kausal , wenn er die Bedingung hk = 0 f¨ ur k < 0 erf¨ ullt. Nichtkausale Filter werden oft als nichtrealisierbar bezeichnet, da sie die Kenntnis zuk¨ unftiger Werte des Eingabesignals erfordern. Das ist nicht notwendigerweise ein Problem bei Anwendungen, bei denen die Signalwerte m¨ oglicherweise schon auf einem physikalischen Medium gespeichert sind, zum Beispiel auf einer CD-ROM. Außerdem lassen sich nichtkausale FIR-Filter immer so verschieben, daß sie kausal werden. Sp¨ ater – wenn wir die Theorie der Filterb¨ anke und der Wavelets entwickeln – wird es sich als praktisch erweisen, mit nichtkausalen Filtern zu arbeiten. Die Korrelation x ⋆ y zweier Signale x und y ist die folgendermaßen definierte Folge: xn yn−k = xn+k yn . (2.4) (x ⋆ y)k = n
n
Das Ergebnis der Korrelation eines Signals mit sich selbst wird als Autokorrelation des Signals bezeichnet. Beispiel 2.1. Ein Beispiel f¨ ur einen LTI-Filter ist der Mittelungsfilter, der durch die folgende Impulsantwort definiert ist: 1/2 f¨ ur k = 0, 1, hk = 0 andernfalls. 2 3
FIR = finite impulse response. IIR = infinite impulse response.
20
2 Signalverarbeitung
Dieser Filter ist ein kausaler FIR-Filter. Die Ausgabe y wird als die Faltung der Eingabe x und der Impulsantwort h berechnet: yk = hn xk−n n
= h0 xk + h1 xk−1 1 = (xk + xk−1 ). 2
Das heißt, die Ausgabe ist das zeitliche Mittel der beiden vorhergehenden Eingabewerte. ⊓ ⊔ Beispiel 2.2. Bei Filterb¨ anken sind der Downsampling-Operator (↓ 2) und der Upsampling-Operator (↑ 2) von fundamentaler Wichtigkeit. Der Downsampling-Operator eliminiert aus der Folge alle Werte mit ungeradzahligem Index und der Upsampling-Operator f¨ ugt zwischen jeden Wert der Folge eine Null ein: (↓ 2)x = (. . . , x−4 , x−2 , x0 , x2 , x4 , . . . ), (↑ 2)x = (. . . , 0, x−1 , 0, x0 , 0, x1 , 0, . . . ). Diese beiden Operatoren sind linear, aber nicht zeitinvariant. ⊓ ⊔ ¨ Ubungsaufgaben zu Abschnitt 2.1 ¨ Ubungsaufgabe 2.1. Zeigen Sie, daß der Upsampling-Operator und der Downsampling-Operator lineare Operatoren, aber nicht zeitinvariant sind. ¨ Ubungsaufgabe 2.2. Ein Filter ist stabil , falls alle beschr¨ankten Eingabesignale ein beschr¨ anktes Ausgabesignal erzeugen. Ein Signal x ist beschr¨ankt, falls |xk | < C f¨ ur alle k und f¨ ur eine Konstante C gilt. Beweisen Sie, daß ein LTI-Filter H dann und nur dann stabil ist, wenn k |hk | < ∞.
2.2 Die z-Transformation Wir f¨ uhren jetzt die z-Transformation und sp¨ater die Fourier-Transformation ein. Die Wirkung von Filtern im Zeit- und im Frequenzbereich ist bei der Signalverarbeitung fundamental. Die Faltung im Zeitbereich wird zu einer einfachen Multiplikation im Frequenzbereich. Dieser Sachverhalt ist der Schl¨ ussel f¨ ur den Erfolg dieser Transformationen. Wir definieren die z-Transformation eines zeitdiskreten Signals x durch (2.5)
X(z) =
∞
k=−∞
xk z −k ,
z ∈ C,
2.2 Die z-Transformation
21
und gelegentlich schreiben wir diesen Sachverhalt in der Form x ⊃ X(z). Die Reihe ist konvergent und die Funktion X(z) ist analytisch f¨ ur alle komplexe Zahlen z innerhalb eines Kreisringbereiches r < |z| < R in der komplexen Ebene. Beispiel 2.3. Einige einfache Folgen und ihre z-Transformierten sind gegeben durch: 1. x = δ,
X(z) = 1, n
2. x = D δ, 1, k ≥ 0, 3. xk = 0, k < 0,
X(z) = z X(z) =
−n
(Impuls) ,
z . z−1
(Impulsverz¨ogerung) (Einheitsschritt) ⊓ ⊔
Wir wollen uns nun ansehen, wie verschiedene Operationen im Zeitbereich in den z-Bereich u ¨ bertragen werden. Ein Delay von n Schritten entspricht einer Multiplikation mit z −n : (2.6)
x ⊃ X(z)
Dn x ⊃ z −n X(z).
⇔
Wir verwenden die Notation x∗ zur Bezeichnung des Zeitinversen des Signals x, das heißt, x∗k = x−k , und wir haben (2.7)
x ⊃ X(z)
⇔
x∗ ⊃ X(z −1 ).
Die N¨ utzlichkeit der z-Transformation geht im Großen und Ganzen aus dem Faltungssatz hervor. Dieser Satz besagt, daß die Faltung im Zeitbereich einer einfachen Multiplikation im z-Bereich entspricht. Satz 2.1. (Faltungssatz) (2.8)
y =h∗x
⇔
Y (z) = H(z)X(z). ⊓ ⊔
¨ Die Transformierte H(z) der Impulsantwort des Filters heißt Ubertragungsfunktion des Filters. Das bedeutet, daß wir die Ausgabe eines LTI-Filters durch eine einfache Multiplikation im z-Bereich berechnen k¨onnen. Diese Vorgehensweise ist oft leichter als eine direkte Berechnung der Faltung. Zur Invertierung der z-Transformation verwendet man u ¨ blicherweise Tabellen, Partialbruchentwicklungen und S¨ atze. Auch die Korrelation hat eine entsprechende Relation auf der Transfor” mationsseite“: (2.9)
y = x1 ⋆ x2
⇔
Y (z) = X1 (z)X2 (z −1 ).
Beispiel 2.4. Wir betrachten erneut den Mittelungsfilter aus Beispiel 2.1, der durch h0 = h1 = 1/2 gegeben ist. Berechnen wir nun die Ausgabe im zBereich, dann gehen wir folgendermaßen vor:
22
2 Signalverarbeitung
H(z) =
1 1 −1 + z , 2 2
Y (z) = H(z)X(z) = ⇒
yk =
1 1 X(z) + z −1 X(z) 2 2
1 (xk + xk−1 ). 2
Das ist das gleiche Ergebnis, das wir im Zeitbereich erhielten.
⊓ ⊔
¨ Ubungsaufgaben zu Abschnitt 2.2 ¨ Ubungsaufgabe 2.3. Verifizieren Sie die Relationen (2.6) und (2.7). ¨ Ubungsaufgabe 2.4. Zeigen Sie, daß sich die Korrelation von x und y als Faltung von x und der Zeitumkehr y ∗ von y schreiben l¨aßt, das heißt, x ∗ y ∗ = x ⋆ y. Beweisen Sie anschließend Relation (2.9).
2.3 Die Fourier-Transformation Die Fourier-Transformation eines Signals liefert uns den Frequenzinhalt des Signals. Der Frequenzinhalt gibt uns oft wertvolle Informationen u ¨ ber das Signal, die nicht aus dem Zeitbereich hervorgehen, zum Beispiel das Vorhandensein von Schwingungen. In Bezug auf Filter gibt uns die FourierTransformation der Impulsantwort Auskunft dar¨ uber, auf welche Weise unterschiedliche Frequenzen in einem Signal verst¨arkt und phasenverschoben werden. Die zeitdiskrete Fourier-Transformation ist folgendermaßen definiert: (2.10)
X(ω) =
∞
k=−∞
xk e−iωk ,
ω ∈ R.
Es folgt, daß X(ω) 2π-periodisch ist. Man beachte, daß wir – unter Mißbrauch der Notation – ein und denselben Buchstaben X sowohl zur Bezeichnung der Fourier-Transformation als auch zur Bezeichnung der z-Transformation eines Signals x verwenden. Aus dem Zusammenhang und den unterschiedlichen Buchstaben ω und z f¨ ur das Argument sollte jedoch klar sein, welche Transformation gemeint ist. Zur Gewinnung der Signalwerte aus der Transformation verwenden wir die Umkehrformel π 1 X(ω)eiωk dω. (2.11) xk = 2π −π Die Parsevalsche Formel gibt uns Auskunft dar¨ uber, daß die Fourier-Transformation die Energie im folgenden Sinn erh¨ alt:
2.3 Die Fourier-Transformation
(2.12)
k
2
|xk | =
1 2π
π
23
2
|X(ω)| dω
−π
oder allgemeiner (2.13)
x, y =
xk yk =
k
1 2π
π
X(ω)Y (ω) dω.
−π
Aus den Definitionen der Fourier-Transformation und der z-Transformation ist ersichtlich, daß wir die Fourier-Transformation X(ω) aus der z-Transformation X(z) durch die Substitution z = eiω erhalten. Der Faltungssatz f¨ ur die z-Transformation liefert uns deswegen einen entsprechenden Satz f¨ ur den Frequenzbereich. (2.14)
y =h∗x
⇔
Y (ω) = H(ω)X(ω).
Die Fourier-Transformation H(ω) der Impulsantwort eines LTI-Filters heißt Frequenzantwort des Filters. Eine interessante Eigenschaft von LTIFiltern ist, daß eine reine Frequenzeingabe auch eine reine Frequenzausgabe erzeugt, aber mit einer unterschiedlichen Amplitude und Phase. Wir wollen uns ansehen, warum das so ist. Hat man f¨ ur die Eingabe xk = eiωk , wobei |ω| ≤ π, dann ist die Ausgabe y wie folgt gegeben: yk = hn xk−n = hn eiω(k−n) n
=e
iωk
n
hn e
−iωn
= eiωk H(ω).
n
Schreibt man die komplexe Zahl H(ω) in der Polarform H(ω) = |H(ω)| eiφ(ω) , dann ergibt sich yk = |H(ω)| ei(ωk+φ(ω)) .
Demnach ist auch die Ausgabe eine reine Frequenz, aber mit der Amplitude |H(ω)| und einer Phasenverschiebung von −φ(ω). Anhand der graphischen Darstellung der Betragsantwort |H(ω)| und der Phasenfunktion φ(ω) f¨ ur |ω| ≤ π sehen wir, wie der Filter unterschiedliche Frequenzkomponenten des Signals beeinflußt. Das ist der Grund daf¨ ur, daß haupts¨achlich die Bezeichnung Filter verwendet wird: gewisse Frequenzkomponenten des Eingabesignals werden herausgefiltert. Ein Filter mit einer Betragsantwort, die konstant gleich Eins ist, d.h. |H(ω)| = 1, heißt deswegen Allpaßfilter – s¨amtliche Frequenzkomponenten des Eingabesignals bleiben in Bezug auf die Gr¨oße (nicht aber in Bezug auf die Phase) unbeeinflußt. Beispiel 2.5. F¨ ur den Mittelungsfilter (oder Tiefpaßfilter) h0 = h1 = 1/2 haben wir 1 H(ω) = (1 + e−iω ) = e−iω/2 (eiω/2 + e−iω/2 )/2 2 = e−iω/2 cos(ω/2).
24
2 Signalverarbeitung
Hieraus erkennen wir, daß |H(ω)| = cos(ω/2) f¨ ur |ω| < π. Auf der linken Seite von Abb. 2.2 ist die Betragsantwort dargestellt. Wir sehen, daß hohe Frequenzen, die in der N¨ ahe von ω = π liegen, mit einem Faktor nahe Null multipliziert werden, und niedrige Frequenzen, die in der N¨ahe von ω = 0 liegen, mit einem Faktor nahe Eins multipliziert werden. F¨ ur den Differenzfilter (oder Hochpaßfilter) ⎧ ⎪1/2 f¨ ur k = 0, ⎨ gk = −1/2 f¨ ur k = 1, ⎪ ⎩ 0 andernfalls, haben wir G(ω) = (1 − e−iω )/2. Die Betragsantwort ist auf der rechten Seite von Abb. 2.2 dargestellt. Diese beiden Filter sind die einfachsten Beispiele f¨ ur Tiefpaß- bzw. Hochpaßfilter. ⊓ ⊔
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0
1
2
3
0
0
1
2
3
Abb. 2.2. Die Betragsantwort eines Tiefpaß- und eines Hochpaßfilters
Beispiel 2.6. Ein idealer Tiefpaßfilter unterdr¨ uckt die Frequenzen u ¨ber dem Cut-off bei ω = π/2 vollst¨ andig, und die Frequenzen unter diesem Cut-off gehen unbeeinflußt hindurch. Dieser Filter ist durch die folgende Frequenzantwortfunktion definiert: 1, |ω| < π/2, H(ω) = 0, π/2 < |ω| < π. Aus der Umkehrformel (2.11) folgt, daß die Filterkoeffizienten Samples einer sinc-Funktion sind: (2.15)
hk =
1 sin(πk/2) 1 sinc(k/2) = · . 2 2 πk/2 ⊓ ⊔
2.4 Linearer Phasengang und Symmetrie
25
¨ Ubungsaufgaben zu Abschnitt 2.3 ¨ Ubungsaufgabe 2.5. Zeigen Sie zuerst, daß die Filterkoeffizienten eines idealen Tiefpaßfilters durch (2.15) gegeben sind. Berechnen Sie anschließend die Filterkoeffizienten (gk ) des idealen Hochpaßfilters 0, |ω| < π/2, G(ω) = 1, π/2 < |ω| < π.
2.4 Linearer Phasengang und Symmetrie Ein Filter hat einen linearen Phasengang (lineare Phase), falls seine Phasenfunktion φ(ω) eine lineare Funktion ist. Allgemeiner sagt man, daß ein Filter einen linearen Phasengang hat, falls die Phasenfunktion eine st¨ uckweise lineare Funktion mit konstantem Anstieg ist. Die Unstetigkeitspunkte eines Filters mit linearem Phasengang befinden sich an den Stellen, an denen H(ω) = 0. Die lineare Phase ist eine wichtige Eigenschaft f¨ ur viele Anwendungen, zum Beispiel in der Sprach- und Tonverarbeitung, denn ein Filter mit linearer Phase verschiebt unterschiedliche Frequenzkomponenten um den gleichen Betrag. Sp¨ ater werden wir auch sehen, auf welche Weise eine lineare Phase in einer Filterbank symmetrischen (und nichtorthogonalen) Wavelets entspricht. Beispiel 2.7. Aus Beispiel 2.5 ist ersichtlich, daß die Phase des Tiefpaßfilters h0 = h1 = 1/2 durch φ(ω) = −ω/2, |ω| < π gegeben ist. Das ist ein Beispiel f¨ ur einen Filter mit linearer Phase. ⊓ ⊔ Sind die Filterkoeffizienten eines Filters H symmetrisch um Null angeordnet, so daß hk = h−k , dann ist die Frequenzantwort reellwertig und gerade: H(ω) = h0 + h1 (eiω + e−iω ) + h2 (ei2ω + e−i2ω ) + · · · = h0 + 2h1 cos ω + 2h2 cos 2ω + · · · . Der Filter hat dann eine Nullphase: φ(ω) = 0. Ein Filter, der in Bezug auf Null antisymmetrisch angeordnet ist, hat eine imagin¨are und ungerade Frequenzantwortfunktion mit der Phase π/2 oder −π/2. Ist hk = −h−k , dann haben wir h0 = 0 und H(ω) = h1 (−eiω + e−iω ) + h2 (−ei2ω + e−i2ω ) + · · · = −2i(h1 sin ω + h2 sin 2ω + · · · ).
Man beachte, daß das Vorzeichen des Faktors (h1 sin ω + h2 sin 2ω + · · · ) bestimmt, ob die Phase π/2 oder −π/2 ist, und daß dieser Sachverhalt von der Frequenz ω abh¨ angt. (−2i = 2e−iπ/2 .)
26
2 Signalverarbeitung
Ein kausaler Filter kann keine Nullphase oder konstante Phase haben (das folgt aus der Theorie der komplexen Funktionen). Demgegen¨ uber kann ein kausaler Filter symmetrisch oder antisymmetrisch sein, aber nicht in Bezug auf Null. Kausale Filter haben eine lineare Phase, wenn sie symmetrisch bzw. antisymmetrisch sind: hk = hN −k bzw. hk = −hN −k . Hier wurde vorausgesetzt, daß wir einen FIR-Filter mit von Null verschiedenen Koeffizienten h0 , h1 , . . . , hN haben. Wir haben dann einen Faktor e−iN ω/2 in H(ω) und sehen den linearen Term −N ω/2 in der Phase. Beispiel 2.8. Der FIR-Filter mit den von Null verschiedenen Koeffizienten h0 = h2 = 1/2 und h1 = 1 ist symmetrisch und 1 1 + e−iω + e−i2ω 2 2 = e−iω (1 + cos ω).
H(ω) =
Der Filter hat eine lineare Phase, φ(ω) = −ω, da 1 + cos ω ≥ 0 f¨ ur alle ω. ⊓ ⊔ Wir erinnern daran, daß die Frequenzantworten von symmetrischen bzw. antisymmetrischen Filtern gerade bzw. ungerade sind, das heißt, H(ω) = ±H(−ω). F¨ ur die z-Transformation bedeutet dies, daß H(z) = ±H(z −1 ). Schlußfolgerung: F¨ ur symmetrische und antisymmetrische Filter treten die Nullstellen von H(z) paarweise entsprechend dem Muster zi und zi−1 auf. Wenn wir in diesem Buch an sp¨ aterer Stelle Wavelets konstruieren, werden wir sehen, daß symmetrische Wavelets symmetrischen Filtern in einer Filterbank entsprechen. Die Gruppenlaufzeit (group delay) eines Filters ist als τ (ω) = −
dφ dω
definiert, wobei φ(ω) die Phase des Filters ist. Die Gruppenlaufzeit mißt den Delay bei der Frequenz ω. Beispiel 2.9. Wir nehmen an, daß die Eingabe x des Filters mit linearer Phase von Beispiel 2.8 gleich der Summe von zwei reinen Frequenzen xk = eiω1 k + eiω2 k ist. Wegen φ(ω) = −ω ist dann die Gruppenlaufzeit τ (ω) = 1 und f¨ ur die Ausgabe y gilt yk = H(ω1 )eiω1 k + H(ω2 )eiω2 k = |H(ω1 )| e−iω1 eiω1 k + |H(ω2 )| e−iω2 eiω2 k = |H(ω1 )| eiω1 (k−1) + |H(ω2 )| eiω2 (k−1) .
Wir sehen, daß die beiden Schwingungen um jeweils einen Schritt verschoben werden. ⊓ ⊔
2.5 Vektorr¨ aume
27
Ist die Gruppenlaufzeit konstant, dann werden unterschiedliche Frequenzen um den gleichen Betrag verschoben. Der Filter hat dann notwendigerweise eine lineare Phase. ¨ Ubungsaufgaben zu Abschnitt 2.4 ¨ Ubungsaufgabe 2.6. Zeigen Sie, daß sich die Frequenzantwort des Hochpaßfilters g0 = 1/2 und g1 = −1/2 in der Form G(ω) = ie−iω/2 sin(ω/2) schreiben l¨ aßt. Berechnen Sie anschließend den Betrag und die Phase von G(ω) und stellen Sie diese graphisch dar. Beachten Sie, daß der Faktor sin(ω/2) nicht f¨ ur alle |ω| < π positiv ist.
2.5 Vektorr¨ aume Uns interessieren die Vektorr¨ aume Rn und Cn . Diese sind n-dimensionale Vektorr¨ aume u ber den reellen Zahlen bzw. u ¨ ¨ ber den komplexen Zahlen. Ein Vektor x ∈ Rn oder Cn wird als ein Spaltenvektor von n Zahlen dargestellt: t x = (x1 , . . . , xn ) . Das Skalarprodukt (innere Produkt) zweier Vektoren x und y ist definiert als (2.16)
x, y = x1 y1 + · · · + xn yn
und die Vektoren sind orthogonal, falls x, y = 0. Die Vektoren ϕ(1) , . . . , ϕ(n) bilden eine Basis von Rn (oder Cn ), falls sich jeder Vektor x ∈ Rn (oder ∈ Cn ) eindeutig in der Form x = a1 ϕ(1) + · · · + an ϕ(n) schreiben l¨ aßt. Die Zahlen a1 , . . . , an sind die Koordinaten von x in Bezug auf die Basis ϕ(1) , . . . , ϕ(n) . Eine Basis ist orthonormal, falls 1, j = k, (j) (k) (2.17) ϕ , ϕ = 0, j = k. F¨ ur eine orthonormale Basis sind die Koordinaten ak = x, ϕ(k) und man hat die Darstellung x = x, ϕ(1) ϕ(1) + · · · + x, ϕ(n) ϕ(n) . Die nat¨ urliche Basis von Rn ist orthonormal und wird durch die folgenden Basisvektoren gegeben:
28
2 Signalverarbeitung (j) δk
=
1, k = j, 0, k = j.
Die Koordinaten eines Vektors x in Bezug auf diese Basis sind x1 , . . . , xn . Haben zwei Vektoren x und y die Koordinaten a1 , . . . , an bzw. b1 , . . . , bn in Bezug auf die orthonormale Basis ϕ(1) , . . . , ϕ(n) , dann l¨aßt sich das Skalarprodukt dieser beiden Vektoren wie folgt berechnen: (2.18)
x, y = a1 b1 + · · · + an bn .
Beispiel 2.10. In R2 sind die beiden Vektoren δ (1) = (1, 0)t und δ (2) = (0, 1)t die nat¨ urliche Basis. Eine andere orthonormale Basis von R2 ist die um 45 Grad entgegen dem Uhrzeigersinn gedrehte nat¨ urliche Basis. Die gedrehte Basis hat die Basisvektoren
1 1 1 −1 ϕ(1) = √ und ϕ(2) = √ . 2 1 2 1 ⊓ ⊔ Aus der linearen Algebra wissen wir, daß die Koordinatentransformation eines Vektors bez¨ uglich zweier orthonormaler Basen durch eine orthogonale Matrix dargestellt wird. Um das zu sehen, nehmen wir an, daß der Vektor t t a = ( a1 , . . . , an ) in Bezug auf x ∈ Rn die Koordinaten a = (a1 , . . . , an ) und (1) (n) (1) (n) bzw. ϕ ,...,ϕ hat. Dann k¨onnen wir x die beiden Basen ϕ , . . . , ϕ auf die folgenden beiden Weisen darstellen: x = a1 ϕ(1) + · · · + an ϕ(n) = a1 ϕ (1) + · · · + an ϕ (n) .
Bilden wir das Skalarprodukt der beiden Seiten dieser Gleichung mit dem Basisvektor ϕ(j) , dann erhalten wir einen Ausdruck f¨ ur die Koordinate aj : aj =
n
k=1
ak ϕ (k) , ϕ(j)
⇔
a = P a.
¨ Die Aquivalenz folgt aus der Definition der Matrizenmultiplikation und die Matrix P hat die Elemente Pjk = ϕ (k) , ϕ(j) . Die Matrix P ist orthogonal, denn P P t = P t P = I. F¨ ur einen Vektor x ∈ Cn gilt die obige Aussage ebenfalls, aber die Matrix P ist hermitesch, das heißt, P P ∗ = P ∗ P = I. Hier bezeichnet P ∗ die adjungierte Matrix, also die komplex konjugierte Transpo∗ ur eine hermitesche nierte von P , das heißt, Pjk = P kj . Man beachte, daß f¨ oder orthogonale Matrix folgendes gilt: x, P y = P ∗ x, y f¨ ur alle x, y ∈ Cn . Beispiel 2.11. Wir wollen uns ansehen, wie man die Koordinaten eines Vektors x ∈ R2 vom nat¨ urlichen Koordinatensystem in das in Beispiel 2.10 gegebene Koordinatensystem transformiert. Zuerst schreiben wir x in der Form
2.6 Zweidimensionale Signalverarbeitung
29
x = a1 ϕ(1) + a2 ϕ(2) = x1 δ (1) + x2 δ (2) und dann berechnen wir die Elemente von P , (i)
Pij = δ (j) , ϕ(i) = ϕj , um die Transformationsmatrix zu bekommen:
1 a1 1 1 x1 a = Px ⇔ = √ . a2 2 −1 1 x2 Man beachte, daß es sehr leicht ist, die Transformation von a zu x zu finden ⊔ (da P orthogonal ist): x = P −1 a = P t a. ⊓ Eine sehr interessante und n¨ utzliche Transformation auf Cn ist die diskrete Fourier-Transformation. F¨ ur x ∈ Cn ist die Transformation X ∈ Cn durch Xj =
n−1 1 xk W −jk n
mit W = ei2π/n
k=0
definiert. Um diese√Transformation orthogonal zu machen, sollten wir eigentlich 1/n durch 1/ n ersetzen; u ¨ blicherweise verwendet man jedoch die von uns gegebene Definition. Wir erhalten x aus X durch die Umkehrformel xk =
n−1
Xj W jk .
j=0
2.6 Zweidimensionale Signalverarbeitung Wir verallgemeinern nun einige der vorhergehenden Definitionen und Ergebnisse auf zwei Dimensionen. Zum Beispiel werden wir die zweidimensionale diskrete Fourier-Transformation definieren. In der Bildverarbeitung ist es nat¨ urlich, mit gesampelten Funktionen zweier Ver¨ anderlicher zu arbeiten. Diese Funktionen sind auf dem ganzzahligen Gitter t Z2 := {(kx ky ) : kx , ky ∈ Z} definiert. Das ganzzahlige Gitter Z2 kann als Unterraum von R2 mit ganzzahligen Elementen angesehen werden und ein Element k ∈ Z2 wird mitunter als Multi-Index bezeichnet. Ein Grauwertskalenbild l¨aßt sich als Funktion ur die f : Z2 → R darstellen4 . Ferner schreiben wir fk anstelle von f (k) f¨ Werte von f . 4
Nat¨ urlich ist ein N × N Bild nur in einem endlichen Bereich 0 ≤ kx , ky < N von Null verschieden.
30
2 Signalverarbeitung
Ein zweidimensionaler Filter H ist ein Operator, der eine Eingabefunktion f auf eine Ausgabefunktion g abbildet. Linearit¨at ist f¨ ur zweidimensionale Filter genauso definiert wie in einer Dimension. Der Verschiebungsoperator t (shift operator) S n mit n = (nx ny ) ∈ Z2 ist durch g = Snf
⇔
gk = fk−n
f¨ ur alle k ∈ Z2
definiert. Bei einem (in Bezug auf S) verschiebungsinvarianten Filter hat man H(S n f ) = S n (Hf ) f¨ ur alle n ∈ Z2 und f¨ ur alle Funktionen f . Wir nehmen an, daß H ein linearer und (in Bezug auf S) verschiebungsinvarianter Filter ist. Es sei h die Ausgabe, wenn die Eingabe ein zweidimensionaler Einheitsimpuls ist: t 1 f¨ ur k = (0 0) , δk = 0 andernfalls, das heißt, h = Hδ. Ebenso wie bei Signalen k¨onnen wir nun die Ausgabe g = Hf als Faltung (in zwei Dimensionen) schreiben: g= fn S n h =: h ∗ f. n∈Z2
Die zweidimensionale diskrete Fourier-Transformation ist definiert als F (ξ, η) = fk e−i(ξkx +ηky ) , ξ, η ∈ R, k∈Z2
und es gilt der 2-D Faltungssatz: g =h∗f
⇔
G(ξ, η) = H(ξ, η)F (ξ, η).
Eine weitere Diskussion zweidimensionaler Filter findet man in Kapitel 5 ( Wavelets in h¨ oheren Dimensionen“). ”
2.7 Sampling Wir erl¨ autern hier kurz die mathematischen Grundlagen des Ersetzens einer Funktion durch die Sample-Werte, die sie beispielsweise an den ganzzahligen Stellen annimmt. Das fundamentale Resultat ist die Poissonsche Summationsformel. F¨ ur ein zeitstetiges Signal f (t) definieren wir dessen Fourier-Transformation als ∞ f(ω) = f (t)e−iωt dt −∞
2.7 Sampling
31
und die inverse Transformation ist gegeben durch ∞ 1 f(ω)eiωt dω. f (t) = 2π −∞
Satz 2.2 (Poissonsche Summationsformel). Es sei vorausgesetzt, daß die Funktion f und ihre Fourier-Transformierte beide stetig sind und (der Einfachheit halber) im Unendlichen quadratisch abklingen. Dann gilt (2.19) f(ω − 2kπ) = f (l)e−ilω k
l
¨ Der Beweis ist Ubungsaufgabe 2.8. ⊓ ⊔ Wurde nun die Funktion f mit einer Cut-off-Frequenz π tiefpaßgefiltert, das heißt, f(ω) = 0 f¨ ur |ω| ≥ π, dann gilt im Paßband |ω| < π f(ω) = f (l)e−ilω . l
Hier haben wir eine vollst¨ andige Information u ¨ber die Fourier-Transformation f(ω), ausgedr¨ uckt durch die Sample-Werte f (l). Unter Anwendung der inversen Fourier-Transformation erhalten wir demnach eine Formel, das sogenannte Sampling-Theorem, das die Funktion aus ihren Sample-Werten rekonstruiert: π f (t) = 1/(2π) f (l)e−ilω eiωt dω =
l
−π
l
f (l) sin π(t − l)/(π(t − l)).
Ist die Bedingung f(ω) = 0 for |ω| ≥ π verletzt, dann erfolgt eine Interferenz (Alias-Effekte) von benachbarten Termen in (2.19) und f(ω) l¨aßt sich im Allgemeinen nicht aus den Sample-Werten rekonstruieren, die an den ganzzahligen Stellen gegeben sind. ¨ Ubungsaufgaben zu Abschnitt 2.7 ¨ Ubungsaufgabe 2.7. Betrachten Sie die Funktion f (t) = sin πt. Was geschieht, wenn diese Funktion bei den ganzen Zahlen gesampelt wird? Vergleichen Sie das mit den Bedingungen im Sampling-Theorem. ¨ Ubungsaufgabe 2.8. Beweisen Sie die Poissonsche Summationsformel (2.19). Beachten Sie dabei, daß die linke Seite die Periode 2π hat, und daß die rechte Seite eine Fourier-Reihe mit derselben Periode ist. ¨ Ubungsaufgabe 2.9. Stellen Sie die Poissonsche Summationsformel (2.19) dar, wenn die Funktion f (t) an den Punkten t = 2−J k gesampelt wird. Welchen Wert sollte die maximale Cut-off-Frequenz in diesem Fall haben? (ω = 2J π)
3 Filterb¨ anke
Die Untersuchung von Filterb¨ anken bei der Signalverarbeitung war einer der Wege, die zu den Wavelets f¨ uhrten. Auf dem Gebiet der Signalverarbeitung hat man lange Zeit hindurch unterschiedliche Systeme von Basisfunktionen entwickelt, um Signale darzustellen. Bei vielen Anwendungen ist es w¨ unschenswert, Basisfunktionen zu haben, die im Zeitbereich und im Frequenzbereich gut lokalisiert sind. Aus rechentechnischen Gr¨ unden sollten diese Funktionen auch eine einfache Struktur haben und schnelle Berechnungen gestatten. Wavelets erf¨ ullen alle diese Kriterien. Die schnelle Berechnung und Darstellung von Funktionen in WaveletBasen h¨ angt eng mit Filterb¨ anken zusammen. Tats¨achlich wird die sogenannte schnelle Wavelet-Transformation in Form einer wiederholten Anwendung der Tiefpaß- und Hochpaßfilter in einer Filterbank ausgef¨ uhrt. Filterb¨anke operieren in diskreter Zeit und Wavelets in stetiger Zeit. Wir diskutieren Wavelets im n¨ achsten Kapitel.
3.1 Zeitdiskrete Basen Wir m¨ ochten die Elemente der endlichdimensionalen linearen Algebra (vgl. Abschnitt 2.5) auf unendlichdimensionale Signale u ¨bertragen. Eine grundlegende Frage besteht darin, ob eine Folge (ϕ(n) )∞ n=−∞ von Signalen eine (Schauder-) Basis ist, das heißt, ob sich alle Signale x eindeutig in der Form cn ϕ(n) (3.1) x= n
f¨ ur gewisse Zahlen (cn ) schreiben lassen. Wir stehen hier einem Problem gegen¨ uber, das es im endlichdimensionalen Fall gar nicht gibt. Die Reihenentwicklung hat eine unendliche Anzahl von Gliedern und diese Reihe muß konvergieren. Wie sich herausstellt, k¨onnen wir keine Basis f¨ ur alle Signale finden, und wir beschr¨anken uns hier auf die
34
3 Filterb¨ anke
Signale mit endlicher Energie. Auf diesen Fall k¨onnen wir alle Konzepte f¨ ur endlichdimensionale Vektorr¨ aume in ziemlich unkomplizierter Weise u ¨ bertragen. Konvergenz und Vollst¨ andigkeit Zur Diskussion der Konvergenz ben¨ otigen wir ein Maß f¨ ur die St¨arke eines Signals. Die Norm eines Signals liefert uns ein solches Maß. Genau wie in endlichen Dimensionen gibt es verschiedene Normen, von denen wir nur die Energienorm verwenden, die folgendermaßen definiert ist: x =
k
2
|xk |
1/2
.
Ein mit einer Norm versehener Vektorraum heißt normierter Raum. Man sagt, daß eine Folge (x(n) )∞ n=1 von Signalen (in Bezug auf die Energienorm) gegen x konvergiert, falls (n) ur n → ∞. x − x → 0 f¨
Dementsprechend bedeutet die Gleichheit in (3.1), daß die Folge s(N ) =
N
cn ϕ(n)
n=−N
der Teilsummen konvergiert und den Grenzwert x hat, das heißt, s(N ) − x → 0 f¨ ur N → ∞.
Anmerkung 3.1. Bei der Definition der Konvergenz hatten wir vorausgesetzt, daß wir einen Kandidaten f¨ ur den Grenzwert der Folge haben. Es w¨are praktisch, eine Konvergenzdefinition oder einen Konvergenztest derart zu haben, daß die Definition bzw. der Test den Grenzwert nicht explizit enth¨alt. Eine fundamentale Eigenschaft der reellen und der komplexen Zahlen besteht darin, daß eine Zahlenfolge dann und nur dann konvergent ist, wenn sie eine Cauchy-Folge ist. In einem allgemeinen normierten Raum ist eine Folge (x(n) )∞ n=1 eine Cauchy-Folge, wenn es zu jedem ǫ > 0 ein N derart gibt, daß (n) ur alle n, m > N. x − x(m) < ǫ f¨
Umgangssprachlich“ formuliert ist eine Cauchy-Folge eine Folge, deren Vek” toren immer n¨ aher beieinander liegen, oder eine Folge, die versucht“, zu kon” vergieren. In einem allgemeinen normierten Raum m¨ ussen nicht alle CauchyFolgen konvergieren. Ein Beispiel ist Q, die Menge der rationalen Zahlen. Ein normierter Raum, in dem alle Cauchy-Folgen konvergieren, heißt Banachraum oder vollst¨andiger normierter Raum. Die endlichdimensionalen Vektorr¨aume andig. Der Raum aller Signale mit endlicher Energie, Rn und Cn sind vollst¨
3.1 Zeitdiskrete Basen
35
ℓ2 (Z) = {x : Z → C | x < ∞}, ist ebenfalls vollst¨ andig. In diesem Kapitel setzen wir voraus, daß alle Signale in diesem Raum enthalten sind. ⊓ ⊔ Hilbertr¨ aume und orthonormale Basen Genau wie in endlichen Dimensionen erweist es sich als praktisch, mit orthogonalen Basen zu arbeiten. Zur Diskussion der Orthogonalit¨at m¨ ussen wir unserem Raum ℓ2 (Z) eine weitere Struktur auferlegen“, indem wir ein inne” res Produkt (Skalarprodukt) zweier Vektoren definieren. Das innere Produkt zweier Signale x und y ist in ℓ2 (Z) folgendermaßen definiert: x, y = xk yk . k
Die Konvergenz dieser unendlichen Summe folgt aus der Cauchy-Schwarzschen Ungleichung: |x, y| ≤ x y . Man beachte, daß sich die Norm von x ∈ ℓ2 (Z) als 2
x = x, x schreiben l¨ aßt. Ein vollst¨ andiger Raum mit einem inneren Produkt heißt Hilbertraum. Wir hatten uns bis jetzt nur die speziellen Hilbertr¨aume Rn , Cn und ℓ2 (Z) angesehen, aber in den nachfolgenden Kapiteln u ¨ ber Wavelets arbeiten wir auch mit dem Raum L2 (R) aller zeitstetigen Signale mit endlicher Energie. Nun haben wir alle erforderlichen Werkzeuge, um Orthonormalbasen f¨ ur unsere Signale zu definieren. Zun¨ achst rufen wir uns die Definition (3.1) der Basis in Erinnerung. Eine Basis (ϕ(n) )∞ n=−∞ ist orthonormal, falls 1, j = k, (j) (k) ϕ , ϕ = 0, j = k. F¨ ur eine Orthonormalbasis sind die Koordinaten eines Signals x durch (3.2)
cn = x, ϕ(n) .
gegeben. Es folgt, daß sich das Signal in der Form (3.3) x= x, ϕ(n) ϕ(n) n
schreiben l¨ aßt. Gleichung (3.2) wird als Analyse und Gleichung (3.3) als Synthese des Signals x bezeichnet.
36
3 Filterb¨ anke
3.2 Die zeitdiskrete Haar-Basis Wie finden wir Basen f¨ ur unseren Raum ℓ2 (Z) und welche Eigenschaften soll¨ ten diese Basen haben? Ublicherweise m¨ ochte man, daß die Basisfunktionen im Zeitbereich und im Frequenzbereich gut lokalisiert sind. Die Koordinaten eines Signals in der betreffenden Basis liefern dann ein Maß f¨ ur die St¨arke des Signals f¨ ur verschiedene Zeit- und Frequenzintervalle. Ausgehend von zwei Prototyp-Basisfunktionen und ihren geraden Translaten (Verschiebungen) werden wir Basen konstruieren. Diese Basen sind außerdem durch die Tatsache charakterisiert, daß die Koordinaten in der neuen Basis unter Verwendung einer Filterbank berechnet werden k¨ onnen. Das ist eine weitere wichtige Eigenschaft, denn es bedeutet, daß sich die Koordinatentransformation effizient berechnen l¨ aßt. Die Basisfunktionen Die zeitdiskrete Haar-Basis ist ein Beispiel f¨ ur die spezielle Klasse von orthogonalen Basen, die mit Filterb¨ anken zusammenh¨angen. Diese orthogonalen Basen sind durch die Tatsache charakterisiert, daß sie als die geraden Translate von zwei Prototyp-Basisfunktionen ϕ und ψ gebildet werden. F¨ ur die Haar-Basis sind diese beiden Funktionen wie folgt gegeben: ⎧ √ √ ⎪ 2 f¨ ur k = 0, ⎨1/ √ ur k = 0, 1, 1/ 2 f¨ und ψk = −1/ 2 f¨ ϕk = ur k = 1, ⎪ 0 andernfalls, ⎩ 0 andernfalls. Die Basisfunktionen (ϕ(n) ) werden nun als die geraden Translate dieser beiden Prototypen gebildet (vgl. Abb. 3.1): (2n)
ϕk
= ϕk−2n
und
(2n+1)
ϕk
= ψk−2n .
Die Koordinaten eines Signals x in dieser neuen Basis sind folglich:
(3.4)
1 yn(0) := c2n = x, ϕ(2n) = √ (x2n + x2n+1 ), 2 1 yn(1) := c2n+1 = x, ϕ(2n+1) = √ (x2n − x2n+1 ). 2
Mit anderen Worten handelt es sich um gewichtete Mittelwerte und Differenzen von paarweise genommenen x-Werten. Eine andere Interpretationsm¨ oglichkeit ist die folgende: Man nimmt paarweise Werte von x und rotiert anschließend das Koordinatensystem in der Ebene (R2 ) um 45 Grad gegen den Uhrzeigersinn. Hier haben wir auch die Folgen y (0) und y (1) eingef¨ uhrt, die aus den geradzahlig bzw. ungeradzahlig indizierten Koordinaten bestehen. Die Basisfunktionen bilden eine orthonormale Basis von ℓ2 (Z) und deswegen k¨ onnen wir die Signalwerte folgendermaßen rekonstruieren:
3.2 Die zeitdiskrete Haar-Basis (0)
37
(2n)
ϕk
ϕk
-
............................................................................
0
1
2n + 1 k
2n
(1)
(2n+1)
ϕk
ϕk
-
............................................................................
0
1
2n + 1 k
2n
Abb. 3.1. Die zeitdiskrete Haar-Basis
xk =
(n)
cn ϕk
n
=
(3.5)
(2n)
yn(0) ϕk
+
n
=
(2n+1)
yn(1) ϕk
n
yn(0) ϕk−2n
n
+
yn(1) ψk−2n .
n
Analyse Wir zeigen nun, wie man eine Filterbank verwenden kann, um die Koordinaten in (3.4) zu berechnen. Definieren wir die Impulsantworten zweier Filter H und G als hk = ϕk und gk = ψk , und bezeichnen h∗ und g ∗ die Zeitinversen dieser Filter, dann k¨onnen wir die inneren Produkte in (3.4) als Faltung (2n) yn(0) = xk ϕk = xk hk−2n = xk h∗2n−k k
k
k
∗
= (x ∗ h )2n
(1)
¨ schreiben. Ahnlich erhalten wir yn = (x ∗ g ∗ )2n . Die Schlußfolgerung ist, daß wir y (0) und y (1) durch Filtern von x mit H ∗ bzw. G∗ und anschließendes Downsampling der Ausgabe dieser beiden Filter berechnen k¨ onnen (vgl. Abb. 3.2). Das Downsampling eliminiert alle ungeradzahlig indizierten Werte eines Signals und wir definieren den DownsamplingOperator (↓ 2) als (↓ 2)x = (. . . , x−2 , x0 , x2 , . . . ). Somit haben wir
38
3 Filterb¨ anke
y (0) = (↓ 2)H ∗ x und
y (1) = (↓ 2)G∗ x.
Hier bezeichnen H ∗ und G∗ die Tiefpaß- und Hochpaßfilter mit den Impulsantworten h∗ bzw. g ∗ . Diese beiden Filter sind nichtkausal, denn ihre Impulsantworten sind die Zeitinversen von kausalen Filtern. Das ist nicht notwendigerweise ein Problem bei Anwendungen, bei denen die Filter immer kausal gemacht werden k¨ onnen, indem man sie um eine gewisse Anzahl von Schritten verschiebt; die Ausgabe wird dann um die gleiche Anzahl von Schritten verschoben. H∗
↓2
y (0)
G∗
↓2
y (1)
x
Abb. 3.2. Der Analyse-Teil einer Filterbank
Synthese Bis jetzt haben wir gesehen, wie man in der Haar-Basis unter Verwendung einer Filterbank ein Signal analysieren oder seine Koordinaten berechnen kann. Nun wollen wir demonstrieren, wie man ein Signal auf der Grundlage der Kenntnis seiner Koordinaten synthetisieren oder rekonstruieren kann. Aus der Definition der Filter H und G und aus der Rekonstruktionsformel (3.5) erhalten wir xk = yn(0) ϕk−2n + yn(1) ψk−2n n
=
n
yn(0) hk−2n
n (0)
= (v
+
∗ h)k + (v
yn(1) gk−2n
n (1)
∗ g)k ,
¨ 3.1). Hierbei wobei v (0) = (↑ 2)y (0) und v (1) = (↑ 2)y (1) (vgl. Ubungsaufgabe ist der Upsampling-Operator (↑ 2) wie folgt definiert: (↑ 2)y = (. . . , y−1 , 0, y0 , 0, y1 , . . . ). Demnach ist das Signal x die Summe zweier Signale: x = v (0) ∗ h + v (1) ∗ g = H (↑ 2)y (0) + G (↑ 2)y (1) =: x(0) + x(1) .
3.3 Die Subsampling-Operatoren
39
Man erh¨ alt die Signale x(0) und x(1) , indem man zun¨achst ein Upsampling (0) von y und y (1) ausf¨ uhrt und dann das Ergebnis mit H bzw. G filtert (vgl. Abb. 3.3). Rufen wir uns andererseits die Rekonstruktionsformel (3.5) in Erinnerung, dann k¨ onnen wir x als x = x(0) + x(1) = x, ϕ(2n) ϕ(2n) + x, ϕ(2n+1) ϕ(2n+1) n
n
schreiben. Das wiederum bedeutet, daß x(0) und x(1) die orthogonalen Projektionen von x auf diejenigen Unterr¨ aume sind, die durch die geraden bzw. ungeraden Basisfunktionen aufgespannt werden.
y (0)
↑2
x(0)
H
+ y (1)
↑2
G
x
x(1)
Abb. 3.3. Der Synthese-Teil einer Filterbank
¨ Ubungsaufgaben zu Abschnitt 3.2 ¨ Ubungsaufgabe 3.1. Zeigen Sie, (v ∗ h)k = Beachten Sie, daß v2n = yn .
n
yn hk−2n , wobei v = (↑ 2)y.
3.3 Die Subsampling-Operatoren In diesem Abschnitt untersuchen wir den Effekt des Downsampling und des Upsampling auf ein Signal. Insbesondere erhalten wir Formeln, die zeigen, wie sich die z-Transformation und die Fourier-Transformation eines Signals andern, wenn ein Subsampling auf das Signal angewendet wird. ¨ Downsampling Der Downsampling-Operator (↓ 2) eliminiert alle ungeradzahlig indizierten Werte eines Signals und ist demnach folgendermaßen definiert: (↓ 2)x = (. . . , x−2 , x0 , x2 , . . . ). Setzen wir y = (↓ 2)x, dann haben wir yk = x2k , und im z-Bereich ergibt sich ¨ (vgl. Ubungsaufgabe 3.2)
40
3 Filterb¨ anke
(3.6)
Y (z) =
1 1/2 X z + X −z 1/2 . 2
Die entsprechende Relation im Frequenzbereich ist ω 1 ω Y (ω) = +π . X +X 2 2 2
Aus diesen Relationen ist ersichtlich, daß wir aus dem Term X(ω/2 + π) eine Alias-Komponente im Spektrum (Frequenzbereich) von y erhalten. Die Filter vor den Downsampling-Operatoren reduzieren diesen Alias-Effekt, und falls die Filter ideale Tiefpaß- bzw. Hochpaßfilter sind, dann wird die AliasKomponente sogar vollst¨ andig eliminiert. Upsampling Der Upsampling-Operator (↑ 2) f¨ ugt zwischen jeden Wert eines Signals eine Null ein: (↑ 2)y = (. . . , y−1 , 0, y0 , 0, y1 , . . . ). ¨ Setzt man u = (↑ 2)y, dann l¨ aßt sich leicht u ufen (vgl. Ubungsaufgabe ¨ berpr¨ 3.2), daß (3.7) U (z) = Y z 2 gilt, und f¨ ur die Fourier-Transformation ergibt sich U (ω) = Y (2ω). Das Spektrum U (ω) von u ist demnach eine um den Faktor 2 gestreckte Version von Y (ω). Das f¨ uhrt zum Auftreten eines Bildes in U (ω). Der Tiefpaßfilter und der Hochpaßfilter reduzieren nach dem Upsampling den Effekt des Bildes, und wenn die Filter ideale Tiefpaß- und Hochpaßfilter sind, dann wird das Bild sogar vollst¨ andig eliminiert. Down- und Upsampling Kombiniert man die Ergebnisse der vorhergehenden beiden Abschnitte, dann ergibt sich eine Relation zwischen einem Signal x und dem down- und upgesampelten Signal u = (↑ 2)(↓ 2)x = (. . . , x−2 , 0, x0 , 0, x2 , . . . ). Im z-Bereich haben wir U (z) =
1 [X(z) + X(−z)] , 2
und im Fourier-Bereich gilt U (ω) =
1 [X(ω) + X(ω + π)] . 2
3.4 Perfekte Rekonstruktion
41
¨ Ubungsaufgaben zu Abschnitt 3.3 ¨ Ubungsaufgabe 3.2. Beweisen Sie die Relationen (3.6) und (3.7). 1/2 ¨ Ubungsaufgabe 3.3. Zeigen , dann gilt Y (ω) = 2 Sie: Ist Y (z) = X z X(ω/2), und ist U (z) = Y z , dann gilt U (ω) = Y (2ω).
¨ ¨ Ubungsaufgabe 3.4. Es sei vorausgesetzt, daß der Filter H die Ubertragungsfunktion H(z) hat. Beweisen Sie, daß das Zeitinverse H ∗ des Filters die ¨ Ubertragungsfunktion H ∗ (z) = H z −1 hat.
¨ Ubungsaufgabe 3.5. Betrachten Sie ein Signal x mit einer 2π-periodischen Fourier-Transformation X(ω). Stellen Sie X(ω), X(ω/2) und X(ω/2 + π) graphisch dar, um sich deutlich zu machen, wie die Alias-Komponente im downgesampelten Signal y = (↓ 2)x in Erscheinung tritt. Analog betrachte man ein Signal y und stelle Y (ω) und U (ω) = Y (2ω) graphisch dar, um sich das Auftreten des Bildes im Spektrum von u = (↑ 2)y zu verdeutlichen.
3.4 Perfekte Rekonstruktion Oben hatten wir die Haar-Basis untersucht, die ein Beispiel f¨ ur einen speziellen Typ von zeitdiskreten Basen ist. Diese Basen sind durch die Tatsache charakterisiert, daß sie als die geraden Translate von zwei Prototyp-Basisfunktionen gebildet werden. Wir hatten gesehen, wie man durch Tiefpaß- und Hochpaßfilter sowie anschließendes Downsampling im Analyse-Teil einer Filterbank die Koordinaten des Signals in der neuen Basis erh¨alt. In ¨ahnlicher Weise lieferten uns das Upsampling sowie anschließende Tiefpaß- und Hochpaßfilter die Darstellung des Signals in der neuen Basis. Eine Filterbank besteht aus einem Analyse- und einem Synthese-Teil, so wie in Abb. 3.4 dargestellt. Das Ziel besteht darin, f¨ ur den Tiefpaß- und den Hochpaßfilter Bedingungen daf¨ ur zu finden, daß die Ausgabe x gleich der Eingabe x ist. Das wird als perfekte Rekonstruktion bezeichnet. Bei einer allgemeinen Filterbank sind die Impulsantworten der Tiefpaßund Hochpaßfilter im Synthese-Teil gleich den beiden Prototyp-Basisfunktionen in einer entsprechenden zeitdiskreten Basis. Ist die Basis orthogonal, dann sind die Analyse-Filter gleich den Zeitinversen der Synthese-Filter. Allgemeiner k¨ onnen wir eine biorthogonale Basis erhalten und in diesem Fall werden und G bezeichnet. die Analyse-Filter mit H
Rekonstruktionsbedingungen
Die Ergebnisse des vorhergehenden Abschnitts f¨ ur das Downsampling und das Upsampling liefern uns die folgenden Ausdr¨ ucke f¨ ur die z-Transformation von x(0) und x(1) :
42
3 Filterb¨ anke y (0) e∗ H
↑2
↓2
H
x
x(0)
+ e∗ G
↓2
y (1)
↑2
G
x b
x(1)
Abb. 3.4. Filterbank
1 ∗ (z) + X(−z)H ∗ (−z) , H(z) X(z)H 2 1 (1) ∗ (z) + X(−z)G ∗ (−z) . X (z) = G(z) X(z)G 2
X (0) (z) =
Addiert man diese Ausdr¨ ucke, dann ergibt sich ein Ausdruck f¨ ur die zTransformation von x : 1 ∗ (z) + G(z)G ∗ (z) X(z) H(z)H X(z) = 2 1 ∗ (−z) + G(z)G ∗ (−z) X(−z). H(z)H + 2
Hierbei haben wir die Terme mit den Faktoren X(z) bzw. X(−z) zusammengefaßt. Hieraus ist ersichtlich, daß wir eine perfekte Rekonstruktion erhalten, das heißt, x = x , falls der Faktor vor X(z) gleich 1 und der Faktor vor X(−z) gleich 0 ist. Wir erlegen somit den Filtern die beiden folgenden Bedingungen auf: (3.8) (3.9)
∗ (z) = 2, ∗ (z) + G(z)G H(z)H ∗ (−z) + G(z)G ∗ (−z) = 0. H(z)H
(Nichtverzerrung) (Alias-Ausl¨oschung)
Die erste Bedingung gew¨ ahrleistet, daß das Signal nicht verzerrt ist, und die zweite Bedingung sichert, daß die Alias-Komponente X(−z) gel¨oscht wird. Diese beiden Bedingungen treten erneut auf, wenn wir Wavelets untersuchen. Das ist auch der Schl¨ ussel zum Zusammenhang zwischen Filterb¨anken und Wavelets. Infolge unterschiedlicher Normalisierungen ist jedoch die rechte Seite der Nichtverzerrungsbedingung“ f¨ ur Wavelets gleich 1. ” Alias-Ausl¨ oschung und der Produktfilter Wir definieren hier die Hochpaßfilter mit Hilfe der Tiefpaßfilter, so daß die Bedingung der Alias-Ausl¨ oschung (3.9) automatisch erf¨ ullt ist. Es seien (3.10)
∗ (−z) und G(z) G(z) = −z −LH = −z −LH ∗ (−z)
Hochpaßfilter, wobei L eine beliebige ungerade ganze Zahl bezeichnet. In der ¨ untenstehenden Ubungsaufgabe 3.6 ist zu zeigen, daß diese Wahl den Alias
3.4 Perfekte Rekonstruktion
43
l¨ oscht; danach erkennt man, warum L ungerade sein muß. In diesem Buch setzen wir in den meisten F¨ allen L = 1. Diese Wahl der Hochpaßfilter ist eine hinreichende Bedingung daf¨ ur, die Alias-Ausl¨oschung zu gew¨ahrleisten. F¨ ur diese Wahl geben wir in Kapitel 4 eine weitere Motivation, wenn wir biorthogonale Basen diskutieren. Setzen wir die Bedingung (3.10) f¨ ur die Alias-Ausl¨oschung in die Bedingung (3.8) f¨ ur die Nichtverzerrung ein, dann erhalten wir eine einzige Bedingung f¨ ur die beiden Tiefpaßfilter zur perfekten Rekonstruktion: ∗ (−z) = 2. ∗ (z) + H(−z)H H(z)H
∗ (z) und dieser reduziert Wir definieren nun den Produktfilter P (z) = H(z)H die Bedingung der perfekten Rekonstruktion auf (3.11)
P (z) + P (−z) = 2.
Die linke Seite dieser Gleichung l¨ aßt sich folgendermaßen schreiben: P (z) + P (−z) = 2p0 + 2 p2n z −2n . n
Hieraus schlußfolgern wir, daß in P (z) alle geraden Potenzen gleich 0 sein m¨ ussen – nat¨ urlich mit Ausnahme des konstanten Gliedes, das gleich 1 sein sollte. Die ungeraden Potenzen fallen alle weg und sind die Konstruktionsvariablen in einer Filterbank. Die Angabe einer Filterbank mit perfekter Rekonstruktion wird dann zu einer Frage des Auffindens eines Produktfilters P (z), der die Bedingung (3.11) erf¨ ullt. Hat man einen solchen Produktfilter gefunden, dann wird dieser in ∗ (z). Die Hochpaßfilter sind gewisser Weise so faktorisiert, wie P (z) = H(z)H dann durch die Gleichung (3.10) gegeben. Beispiel 3.1. Wir wollen uns ansehen, ob die zeitdiskrete Haar-Basis die Bedingung der perfekten Rekonstruktion erf¨ ullt. Die Filter sind gegeben durch 1 H(z) = H(z) = √ (1 + z −1 ), 2
Der Produktfilter ist dann
1 G(z) = G(z) = √ (1 − z −1 ). 2
∗ (z) = H(z)H(z −1 ) P (z) = H(z)H 1 = (z + 2 + z −1 ). 2 Dieser Produktfilter erf¨ ullt tats¨ achlich die Bedingung der perfekten Rekonstruktion, denn mit Ausnahme des konstanten Gliedes p0 = 1 sind alle geraden Potenzen gleich 0. ⊓ ⊔
44
3 Filterb¨ anke
Orthogonale Filterb¨ anke Im ersten Teil dieses Kapitels hatten wir gesehen, daß bei orthogonalen zeitdiskreten Basen die entsprechenden Filter in der Filterbank folgendermaßen zusammenh¨ angen: H(z) = H(z) und G(z) = G(z).
Eine solche Filterbank wird folglich orthogonal genannt. F¨ ur orthogonale Filterb¨ anke k¨ onnen wir die Bedingung der perfekten Rekonstruktion ausschließlich mit Hilfe des Synthese-Tiefpaßfilters H(z) ausdr¨ ucken. Die Relation zwischen dem Analyse- und dem Synthese-Filter impliziert ∗ (z) = H(z)H(z −1 ), P (z) = H(z)H
das heißt, die Folge p ist die Autokorrelation von h (vgl. Kapitel 2). Im FourierBereich haben wir im Falle reeller Filter P (ω) = H(ω)H(ω) = |H(ω)|2 ≥ 0. Das bedeutet, daß P (ω) gerade und reellwertig ist. Die Orthogonalit¨at impliziert demnach, daß die Koeffizienten im Produktfilter symmetrisch sein m¨ ussen, das heißt, pn = p−n . Dies folgt aus Abschnitt 2.4 u ¨ ber den linearen Phasengang und Symmetrie. Im Fourier-Bereich k¨onnen wir nun die Bedingung (3.11) der perfekten Rekonstruktion als 2
2
|H(ω)| + |H(ω + π)| = 2
(3.12)
schreiben. Diese Bedingung wird erneut auftreten, wenn wir orthogonale Wavelet-Basen untersuchen. Wir hatten bereits fr¨ uher festgestellt, daß der einzige Unterschied darin besteht, daß f¨ ur Wavelets die linke Seite gleich 1 sein sollte. Biorthogonale Basen Wir erinnern uns daran, daß wir eine orthogonale Filterbank als Realisierung der Darstellung eines Signals in einem speziellen Typ einer zeitdiskreten Basis auffassen konnten. Diese Basis wurde aus den geraden Translaten zweier Basisfunktionen ϕ und ψ gebildet, wobei ϕk = hk und ψk = gk . Und wir hatten x, ϕ(2n+1) ϕ(2n+1) , x, ϕ(2n) ϕ(2n) + x= n
n
(2n) ϕk
(2n+1) ϕk
wobei = ϕk−2n und = ψk−2n . Eine biorthogonale Filterbank entspricht nun der biorthogonalen Entwicklung x= x, ϕ (2n) ϕ(2n) + x, ϕ (2n+1) ϕ(2n+1) . n
(2n)
Hier haben wir ϕ k ψk = gk .
n
(2n+1)
= ϕ k−2n und ϕ k
= ψk−2n sowie ϕ k = hk und
3.5 Konstruktion von Filterb¨ anken
45
¨ Ubungsaufgaben zu Abschnitt 3.4 ¨ Ubungsaufgabe 3.6. Zeigen Sie: Die Bedingung f¨ ur die Alias-Ausl¨oschung (3.10) der Hochpaßfilter impliziert, daß Bedingung (3.9) erf¨ ullt ist. ¨ Ubungsaufgabe 3.7. Es gibt eine Filterbank, die sogar noch einfacher ist, als die mit Hilfe der Haar-Basis gebildete Filterbank: die sogenannte LazyFilterbank. Diese ist orthogonal und durch den Tiefpaßfilter H(z) = z −1 gegeben. Welches sind die entsprechenden Hochpaßfilter? Was ist der Produktfilter, und erf¨ ullt dieser die Bedingung der perfekten Rekonstruktion? Die Signale y (0) und y (1) sind die ungeradzahlig bzw. geradzahlig indizierten Werte von x. Beweisen Sie das! Welches sind die Signale x(0) und x(1) ? Ist ihre Summe gleich x?
3.5 Konstruktion von Filterb¨ anken Die Diskussion im vorhergehenden Abschnitt hat gezeigt, daß sich die Konstruktion einer Filterbank mit perfekter Rekonstruktion auf die folgenden drei Schritte reduzieren l¨ aßt: 1. Man finde einen Produktfilter P (z), der die Bedingung P (z) + P (−z) = 2 erf¨ ullt. ∗ (z). 2. Man faktorisiere den Produktfilter in zwei Tiefpaßfilter: P (z) = H(z)H 3. Man definiere die Hochpaßfilter als ∗ (−z) und G(z) = −z −LH ∗ (−z), G(z) = −z −LH
wobei L eine beliebige ungerade ganze Zahl ist.
Die Koeffizienten im Produktfilter erf¨ ullten p0 = 1 und p2n = 0. In einer orthogonalen Filterbank haben wir auch die Symmetriebedingung pn = p−n . Das einfachste Beispiel eines solchen Produktfilters kam von der Haar-Basis, wobei 1 P (z) = (z + 2 + z −1 ). 2 Die Frage ist nun, wie man Produktfilter h¨ oherer Ordnung findet. Solche Produktfilter w¨ urden uns ihrerseits Tiefpaß- und Hochpaßfilter h¨oherer Ordnung ∗ (z). Normalerweise gibt es verschiedene M¨oglichliefern, denn P (z) = H(z)H ∗ (z) zu faktorisieren. F¨ ur eine orthogonale Filkeiten, P (z) in H(z) und H terbank haben wir H(z) = H(z), und im allgemeinen Fall haben wir eine sogenannte biorthogonale Filterbank. In diesem Abschnitt beschreiben wir, wie man eine Familie von Produktfiltern konstruiert, die von der Mathematikerin Ingrid Daubechies entdeckt wurden. Es gibt aber auch andere Typen von Produktfiltern und wir werden diese sp¨ ater in Kapitel 8 diskutieren (in dem wir verschiedene Familien von Wavelet-Basen definieren).
46
3 Filterb¨ anke
Der Daubechies-Produktfilter Im Jahr 1988 schlug Daubechies einen symmetrischen Produktfilter der Form P (z) =
1+z 2
N
1 + z −1 2
N
QN (z)
vor, wobei QN (z) ein symmetrisches Polynom (2N − 1)-ten Grades in z ist: QN (z) = aN −1 z N −1 + · · · + a1 z + a0 + a1 z −1 + . . . aN −1 z 1−N . Das Polynom QN (z) ist so gew¨ ahlt, daß P (z) die Bedingung der perfekten Rekonstruktion erf¨ ullt, und es ist eindeutig. TiefpaßBis jetzt wurde keine Bedingung daf¨ ur formuliert, daß H und H filter sind, oder daß G und G Hochpaßfilter sind. Wir sehen aber, daß der Daubechies-Produktfilter so gew¨ ahlt wurde, daß P (z) bei z = −1 eine Nullstelle der Ordnung 2N hat, das heißt, P (ω) hat bei ω = π eine Nullstelle der Ordnung 2N . Das wiederum bedeutet, daß P (z) das Produkt zweier Tiefpaßfilter ist. In unserer Darstellung der Wavelet-Theorie werden wir sehen, daß die Anzahl der Nullstellen mit den Approximationseigenschaften von WaveletBasen zusammenh¨ angt. Das ist die Stelle, an dem die Theorie der Wavelets die Konstruktion von Filterb¨ anken beeinflußt hat. In der zeitdiskreten Theorie gibt es nichts, was im Falle der Tiefpaßfilter daf¨ ur spricht, warum es bei z = −1 mehr als eine Nullstelle geben sollte. Wir wollen das mit zwei Beispielen illustrieren. Beispiel 3.2. F¨ ur N = 1 erhalten wir folgenden Produkfilter f¨ ur die HaarBasis: 1 + z −1 1+z Q1 (z). P (z) = 2 2 Aus der Bedingung p0 = 1 folgt hier Q1 (z) = a0 = 2 und wir haben P (z) =
1 (z + 2 + z −1 ). 2
⊓ ⊔
Beispiel 3.3. F¨ ur N = 2 erhalten wir den Produktfilter der n¨achsth¨oheren Ordnung: 2 2 1+z 1 + z −1 P (z) = Q2 (z). 2 2 Hier ist Q2 (z) = a1 z + a0 + a1 z −1 und setzt man diesen Ausdruck in P (z) ein, dann ergibt sich nach Vereinfachung P (z) =
1 (a1 z 3 + (a0 + 4a1 )z 2 + (4a0 + 7a1 )z + (6a0 + 8a1 ) 16 + (4a0 + 7a1 )z −1 + (a0 + 4a1 )z −2 + a1 z −3 ).
3.5 Konstruktion von Filterb¨ anken
47
Die Bedingungen p0 = 1 und p2 = 0 der perfekten Rekonstruktion liefern das lineare Gleichungssystem 6a0 + 8a1 = 16 a0 + 4a1 = 0 mit der L¨ osung a0 = 4 und a1 = −1. Wir haben dann P (z) =
1 (−z 3 + 9z + 16 + 9z −1 − z −3 ). 16
⊓ ⊔
Faktorisierung Wir wollen zun¨ achst eine orthogonale Filterbank unter Verwendung des symmetrischen Daubechies-Produktfilters konstruieren. Aufgrund von P (z) = H(z)H(z −1 ) wissen wir, daß die Nullstellen von P (z) stets in Paaren der Form zk und zk−1 auftreten. Bei der Faktorisierung von P (z) k¨onnen wir f¨ ur jede Nullstelle zk entweder (z −zk ) oder (z −zk−1 ) als Faktor von H(z) w¨ahlen. W¨ ahlen wir immer diejenige Nullstelle, die innerhalb des Einheitskreises oder auf diesem liegt, das heißt, |zk | ≤ 1, dann heißt H(z) der minimale Phasenfaktor von P (z). Wir nehmen nun an, daß der Filter H(z) auch symmetrisch ist. Dann m¨ ussen die Nullstellen von H(z) paarweise in der Form zk und zk−1 auftreten. Aber das widerspricht der Orthogonalit¨atsbedingung, es sei denn, wir haben die Haar-Basis, bei der beide Nullstellen bei z = −1 liegen. Somit gilt: orthogonale Filterb¨anke k¨onnen keine symmetrischen Filter haben.1 In einer biorthogonalen Basis oder Filterbank l¨aßt sich der Produktfilter ∗ (z) faktorisieren. Es gibt verschiedene M¨oglichin der Form P (z) = H(z)H keiten, dies zu tun, und wir erhalten dann unterschiedliche Filterb¨anke f¨ ur einen gegebenen Produktfilter. In den meisten F¨allen m¨ochten wir, daß die ∗ (z) symmetrisch sind – es sei denn, wir konstruieren eine Filter H(z) und H orthogonale Filterbank. ∗ (z) reUnd schließlich m¨ ochten wir noch, daß sowohl H(z) als auch H elle Koeffizienten haben. Aus diesem Grund richten wir es so ein, daß die ∗ (z) konjugiert komplexen Nullstellen zk und zk entweder zu H(z) oder zu H geh¨ oren. Wir wollen das wiederum durch ein Beispiel illustrieren. Beispiel 3.4. F¨ ur N = 2 war der Daubechies-Produktfilter durch 1 (−z 3 + 9z + 16 + 9z −1 − z −3 ) 16 2 2 1+z 1 + z −1 = (−z + 4 − z −1 ) 2 2
P (z) =
1
Wir haben vorausgesetzt, daß es sich bei s¨ amtlichen Filtern um FIR-Filter handelt. Eine Filterbank mit symmetrischen IIR-Filtern kann orthogonal sein.
48
3 Filterb¨ anke
√ gegeben. Dieses Polynom √ hat vier Nullstellen bei z = −1, eine bei z = 2 − 3 und eine bei z = 2 + 3. Zwei m¨ ogliche Faktorisierungen dieses Produktfilters sind: 1. orthogonal und nichtsymmetrisch: H(z) = H(z) = √ √ √ √ 1 = √ (1 + 3) + (3 + 3)z −1 + (3 − 3)z −2 + (1 − 3)z −3 ; 4 2 2. biorthogonal und symmetrisch: 1 H(z) = √ z + 2 + z −1 , 2 2 1 H(z) = √ −z 2 + 2z + 6 + 2z −1 − z −2 . 4 2
⊓ ⊔
3.6 Bemerkungen Wir machen den Leser auf zwei B¨ ucher aufmerksam, in denen die WaveletTheorie auf der Grundlage der Untersuchung von Filterb¨anken entwickelt wird: Wavelets and Filter Banks von Nguyen und Strang [27] sowie Wavelets and Subband Coding von Kovacevic und Vetterli [30]. Diese B¨ ucher eignen sich f¨ ur Ingenieure und Studenten mit Kenntnissen auf dem Gebiet der Signalverarbeitung.
4 Multi-Skalen-Analyse
Dieses Kapitel ist dem Begriff der Multi-Skalen-Analyse (MSA)1 gewidmet. Wie bereits aus der Bezeichnung hervorgeht, besteht die Grundidee darin, eine Funktion durch Betrachtung unterschiedlicher Skalen (Aufl¨osungen) zu analysieren. Wavelets bieten eine M¨ oglichkeit, die Differenz zwischen Approximationen auf unterschiedlichen Skalen darzustellen. Wir beginnen das Kapitel mit einigen grundlegenden mathematischen Begriffen der zeitstetigen Signalverarbeitung. Danach sehen wir uns die Definitionen der Skalierungsfunktionen, der Multi-Skalen-Analyse und der Wavelets an. Anschließend untersuchen wir orthogonale und biorthogonale Wavelet-Basen. Zum Schluß diskutieren wir die Approximationseigenschaften von Skalierungsfunktionen und Wavelets; das liefert eine M¨ oglichkeit zur Konstruktion von Filterb¨ anken.
4.1 Projektionen und Basen in L2 (R) In diesem Abschnitt stellen wir einige mathematische Begriffe bereit, die f¨ ur ein volles Verst¨ andnis der Multi-Skalen-Analyse und der Wavelets unentbehrlich sind. Wir geben nicht immer vollst¨ andige Beweise, denn das w¨ urde zuviele mathematische Details erfordern. Wir formulieren die grundlegenden Definitionen und Ergebnisse; danach diskutieren wir diese und umgehen dabei einige der formalen Begr¨ undungen. Der Hilbertraum L2 (R) Bei zeitdiskreten Signalen haben wir im Raum ℓ2 (Z) der Signale mit endlicher Energie gearbeitet. Im stetigen Fall ist die Energie eines Signals f zum Beispiel durch Integration von |f (t)|2 u ¨ ber der reellen Geraden gegeben. Demnach l¨aßt sich der Raum der zeitstetigen Signale mit endlicher Energie folgendermaßen definieren: 1
Multi-Resolution Analysis (MRA).
50
4 Multi-Skalen-Analyse
Definition 4.1. Wir definieren L2 (R) als die Menge aller Funktionen f (t), f¨ ur die ∞ 2 |f (t)| dt < ∞. −∞
⊓ ⊔
Das ist ein linearer Raum mit der Norm 1/2 ∞ 2 |f (t)| dt . f = −∞
Die drei fundamentalen Eigenschaften der Norm sind 1. f ≥ 0 und f = 0 ⇒ f = 0, 2. cf = |c| f f¨ ur c ∈ C, 3. f + g ≤ f + g
(Dreiecksungleichung).
Die L2 -Norm kann als Fehlermaß verwendet werden. Ist f eine Approximation von f , dann besteht eine M¨ oglichkeit der Quantifizierung des Fehlers darin, ur daß man f − f bildet. Man sagt, daß eine Folge (fn ) von Funktionen f¨ n → ∞ (in L2 ) gegen den Grenzwert f konvergiert und man schreibt fn → f , ur n → ∞. Mit anderen Worten: Die Funktionen fn falls fn − f → 0 f¨ werden (in L2 ) immer bessere Approximationen f¨ ur f . Die L2 -Norm wird durch das Skalarprodukt ∞ f (t)g(t) dt (4.1) f, g = −∞
! induziert, das heißt, wir haben f = f, f . Die Cauchy-Schwarzsche Ungleichung |f, g| ≤ f g garantiert die Endlichkeit des Integrals (4.1). Die Existenz eines Skalarproduktes macht es m¨oglich, u ¨ber Orthogonalit¨at zu sprechen: Zwei Funktionen f und g heißen orthogonal, wenn f, g = 0.
Anmerkung 4.1. Der mit dem Skalarprodukt versehene Raum L2 (R) ist vollst¨andig. Betrachtet man n¨ amlich eine Cauchyfolge (fn ), also fn − fm → 0 f¨ ur m, n → ∞, dann konvergiert diese Folge in L2 (R) gegen einen Grenzwert f , ur n → ∞. Ein normierter vollst¨andiger Vektorraum das heißt, fn − f → 0 f¨ mit einem Skalarprodukt heißt Hilbertraum. Demnach sind L2 (R) sowie die R¨ aume Rn , Cn und ℓ2 (Z) Hilbertr¨ aume. ⊓ ⊔
4.1 Projektionen und Basen in L2 (R)
51
Der Raum L2 (R) enth¨ alt alle physikalisch realisierbaren Signale. Dieser Raum ist der nat¨ urliche Rahmen f¨ ur die zeitlich kontinuierliche FourierTransformation ∞ F f (ω) = f(ω) = f (t)e−iωt dt. −∞
F¨ ur die Fourier-Transformation gilt die Parsevalsche Formel ∞ ∞ 2 2 |f (t)| dt |f (ω)| dω = 2π −∞
−∞
oder F f = (2π)1/2 f . Die Gr¨ oße |f(ω)|2 /(2π) l¨aßt sich dann als die Energiedichte bei der Frequenz ω interpretieren. Integriert man diese Energiedichte u aß der Parsevalschen Formel die ¨ ber alle Frequenzen, dann ergibt sich gem¨ Gesamtenergie des Signals. Abschließend bemerken wir, daß die Parsevalsche Formel ein Spezialfall der allgemeineren Plancherelschen Formel ist: ∞ ∞ f (t)g(t) dt g (ω) dω = 2π f (ω) −∞
−∞
oder f, g = 2πf, g.
Abgeschlossene Unterr¨ aume und Projektionen Wir betrachten im Raum L2 (R) Unterr¨ aume von Signalen. Ein typisches Beispiel ist die Klasse der bandbegrenzten Signale, das heißt, der Signale f mit f(ω) = 0 f¨ ur |ω| > Ω, wobei Ω eine feste Cut-off-Frequenz bezeichnet. Ein linearer Unterraum V ist abgeschlossen, falls aus fn ∈ V und fn → f die Beziehung f ∈ V folgt. Der Raum der bandbegrenzten Funktionen ist abgeschlossen. F¨ ur abgeschlossene Unterr¨ aume ist es m¨oglich, jeweils einen Projektionsoperator auf einen solchen Unterraum zu definieren. Die Idee hinter den Projektionen besteht darin, ein beliebiges Signal f durch ein Signal v des Unterraumes V zu approximieren. Wir m¨ ochten eine optimale Approximation haben, durch die f − v, v ∈ V , minimiert wird. Man kann beweisen, daß eine eindeutige Minimierung w in V existiert. Diese Tatsache rechtfertigt die nachstehende Definition. Definition 4.2. Die (orthogonale) Projektion von f auf den abgeschlossenen Unterraum V ist das eindeutig bestimmte w ∈ V , f¨ ur das folgendes gilt: f − w ≤ f − v
f¨ ur alle v ∈ V.
Die Projektion von f auf V wird mit PV f bezeichnet.
⊓ ⊔
Eine n¨ utzliche Charakterisierung der Projektion PV f besteht darin, daß f − PV f orthogonal zu V ist: f − PV f, v = 0
f¨ ur alle v ∈ V.
52
4 Multi-Skalen-Analyse
V⊥ W
PV⊥ f
w
f
* PV f − f -? V 6
f
*
PV f
v
V
Abb. 4.1. Projektionen in zwei Dimensionen
Dies l¨ aßt sich durch Projektionen in der Ebene illustrieren (vgl. Abb. 4.1). Definieren wir das orthogonale Komplement in Bezug auf V als V ⊥ = {u ∈ L2 (R) : u, v = 0 f¨ ur alle v ∈ V }, dann haben wir die orthogonale Zerlegung f = PV f + PV ⊥ f . Mitunter werden wir die vollst¨ andige Bezeichnung orthogonale Projektion verwenden, da es andere (schiefe) Projektionen gibt. Ist W ein abgeschlossener Unterraum derart, daß sich jedes f eindeutig in der Form f = v +w mit v ∈ V und w ∈ W zerlegen l¨ aßt, dann heißt v die Projektion von f auf V in Bezug auf W (vgl. Abb. 4.1). Beispiel 4.1. Die orthogonale Projektion auf den Raum V der bandbegrenzten Funktionen ist dadurch gegeben, daß man alles eliminiert, was u ¨ber der Frequenz Ω liegt: f(ω) falls |ω| < Ω, (4.2) P" V f (ω) = 0 andernfalls.
¨ Der Beweis wird dem Leser als Ubungsaufgabe u ⊔ ¨ berlassen. ⊓ Riesz-Basen
Der Begriff der Basis in linearen R¨ aumen l¨ aßt sich von endlichen Dimensionen und ℓ2 (Z) auf L2 (R) verallgemeinern. Eine Familie {ϕk }k∈Z von Funktionen wird als Basis eines linearen Unterraumes V bezeichnet, falls sich jede Funktion f ∈ V eindeutig in der Form ck ϕk (4.3) f= k
schreiben l¨ aßt.
4.1 Projektionen und Basen in L2 (R)
53
Man sagt auch, daß V von den Funktionen ϕk aufgespannt wird. Die Summe (4.3) sollte als Grenzwert von endlichen Summen interpretiert werden, wenn die Anzahl der Terme gegen Unendlich geht. Genauer gesagt: f − sK → 0 f¨ ur K → ∞, wobei sK die folgende endliche Summe2 ist: K
sK =
ck ϕk .
k=−K
Mit anderen Worten: Die Energie von f − sK geht gegen Null, wenn man immer mehr Glieder der Summe einbezieht. Eine in diesem Buch verwendete fundamentale Tatsache in Bezug auf das Skalarprodukt ist: (4.4) ck ϕk , g = ck ϕk , g. k
k
¨ Der Beweis ist in Ubung 4.4 skizziert. uglich der Basis {ϕk }. Die Zahlen (ck ) sind die Koeffizienten von f bez¨ Die Berechnung dieser Koeffizienten von f heißt Analyse von f in der Basis {ϕk }. Die Rekonstruktion von f aus (ck ) wird als Synthese bezeichnet. Wir m¨ ochten, daß Analyse und Synthese in der Basis {ϕk } numerisch stabil sind und geben deswegen folgende Definition 4.3. Eine Basis {ϕk } eines Unterraums V heißt Riesz-Basis, wenn f¨ ur f = k ck ϕk die Beziehung 2
A f ≤
k
2
2
|ck | ≤ B f
gilt, wobei 0 < A ≤ 1 ≤ B < ∞ Konstanten sind, die nicht von f abh¨angen. ⊓ ⊔ Um zu begr¨ unden, warum hieraus numerische Stabilit¨at folgt, betrachten wir eine Approximation f eines Signals f . Hat das Signal die Koeffizienten ck ), dann haben wir (ck ) und hat seine Approximation die Koeffizienten ( 2 |ck − ck | ≤ Bf − f2 . Af − f2 ≤ k
Kleine Fehler im Signal f¨ uhren dann zu kleinen Fehlern in den Koeffizienten und umgekehrt – vorausgesetzt, daß A−1 und B nicht zu groß sind. Ein vielleicht wichtigeres Resultat bezieht sich auf die relativen Fehler: # # c c − c B c − B f − f f − f ≤ und ≤ . f A c c A f 2
Streng genommen m¨ ußte man zwei Indizes K1 und K2 verwenden, die unabh¨ angig voneinander gegen Unendlich gehen.
54
4 Multi-Skalen-Analyse
! Hier ist c die ℓ2 (Z)-Norm. Die Zahl B/A hat den Namen Konditionszahl . Diese Zahl liefert eine obere Schranke daf¨ ur, um wieviel die relativen Fehler wachsen k¨ onnen, wenn man zwischen f und seinen Koeffizienten (ck ) wechselt. Wegen A ≤ B muß die Konditionszahl mindestens 1 sein. Der optimale Fall tritt ein, wenn die Konditionszahl gleich 1 ist: A = B = 1. In diesem Fall haben wir eine Orthonormalbasis (ON-Basis). F¨ ur ON-Basen gilt ϕk , ϕl = δk,l , wobei wir das Kronecker-Symbol verwendet haben: 1 falls k = l, δk,l = 0 andernfalls. Bildet man die Skalarprodukte mit ϕl in (4.3), dann ergibt sich cl = f, ϕl und demnach l¨ aßt sich jedes f ∈ V in folgender Form schreiben: (4.5) f= f, ϕk ϕk . k
F¨ ur die orthogonale Projektion PV auf V zeigt man leicht, daß f¨ ur jedes f ∈ L2 (R) die Beziehung PV f, ϕk = f, ϕk gilt. Wir haben dann PV f = f, ϕk ϕk . k
Es gibt eine Verallgemeinerung der Formel (4.5) f¨ ur Riesz-Basen. Wir setzen nun eine duale Riesz-Basis {ϕ k } derart voraus, daß ϕk , ϕ l = δk,l gilt. Die Basen {ϕk } und {ϕ k } heißen biorthogonal . In diesem biorthogonalen Fall gilt f= f, ϕ k ϕk . k
Wir k¨ onnen einen (nicht orthogonalen) Projektionsoperator durch PV f = f, ϕ k ϕk k
definieren. Bezeichnet man mit V den linearen Raum, der von den dualen Basisfunktionen ϕ k aufgespannt wird, dann ist PV die bez¨ uglich V ⊥ betrachtete Projektion auf V . Im Allgemeinen ist die Wahl der dualen Basis {ϕ k } nicht eindeutig. Fordern wir jedoch zus¨ atzlich, daß der von der dualen Basis aufgespannte lineare Raum gleich V ist, dann gibt es genau eine solche Basis. Das ist zum Beispiel der Fall, wenn V = L2 (R). ¨ Ubungsaufgaben zu Abschnitt 4.1 ¨ Ubungsaufgabe 4.1. Zeigen Sie, daß die Menge der bandbegrenzten Funktionen ein Unterraum von L2 (R) ist.
4.2 Skalierungsfunktionen und Approximation
55
¨ Ubungsaufgabe 4.2. Zeigen Sie, daß der Projektionsoperator in Beispiel 4.1 durch (4.2) gegeben ist. Hinweis: Man zeige, daß 0 = f − PV f, v = f¨ ur jedes bandbegrenzte v gilt.
1 " f − PV f , v 2π
¨ Ubungsaufgabe 4.3. Beweisen Sie: Ist {ϕk } eine Orthonormalbasis von V und ist PV die orthogonale Projektion auf V , dann gilt f¨ ur beliebige f die Beziehung PV f, ϕk = f, ϕk . ¨ Ubungsaufgabe 4.4. Beweisen Sie (4.4). Hinweis: Es sei f die Summe in (4.3) und es bezeichne sK die endliche Summe. Man zeige zun¨achst sK , g =
K
k=−K
ck ϕk , g,
was sich m¨ uhelos durchf¨ uhren l¨ aßt. Dann folgt $ $ K $ $ $ $ ck ϕk , g$ = |f, g − sK , g| $f, g − $ $ k=−K
= |f − sK , g| ur K → ∞. ≤ f − sK g → 0 f¨
4.2 Skalierungsfunktionen und Approximation Die zentrale Idee der Multi-Skalen-Analyse besteht darin, Funktionen auf unterschiedlichen Skalen oder Aufl¨ osungslevels zu approximieren. Diese Approximationen werden durch die Skalierungsfunktion geliefert, die mitunter auch als Approximationsfunktion bezeichnet wird. Die Haarsche Skalierungsfunktion Die Haarsche Skalierungsfunktion ist das einfachste Beispiel; sie ist definiert durch 1 falls 0 < t < 1, ϕ(t) = 0 andernfalls. Mit dieser Skalierungsfunktion erhalten wir st¨ uckweise konstante Approximationen. Zum Beispiel k¨ onnen wir eine Funktion f durch eine Funktion f1 approximieren, die st¨ uckweise konstant auf den Intervallen (k/2, (k + 1)/2), k ∈ Z, ist. Diese Funktion l¨ aßt sich in der Form
56
4 Multi-Skalen-Analyse
2
2
1.5
1.5
1
1
0.5
0.5
0 0
1
2
0 0
3
1
f1 (t)
ϕ(2t − 1)
2
3
ϕ(2t − 4)
Abb. 4.2. Eine Funktion in V1 und Skalierungsfunktionen zum Skalenfaktor 1/2
(4.6)
f1 (t) =
k
s1,k ϕ(2t − k)
schreiben. Das ist offensichtlich, denn ϕ(2t− k) ist gleich 1 auf (k/2, (k + 1)/2) und andernfalls gleich 0 (vgl. Abb. 4.2). Der in L2 (R) gebildete Unterraum der Funktionen der Form (4.6) wird mit V1 bezeichnet. Die Koeffizienten (s1,k ) k¨ onnen als die Mittelwerte von f u ¨ ber ahlt werden: den Intervallen (k/2, (k + 1)/2) gew¨ s1,k = 2
(k+1)/2
f (t) dt = 2
k/2
∞
−∞
f (t)ϕ(2t − k) dt.
Die Approximation (4.6) ist tats¨ achlich die orthogonale Projektion von f auf V1 und hat die ON-Basis {21/2 ϕ(2t − k)}. Aus Gr¨ unden einer bequemeren Schreibweise ist der Faktor 21/2 in s1,k enthalten. Die Koeffizienten (s1,k ) k¨ onnten auch als die Sample-Werte von f bei t = k/2, s1,k = f (k/2) gew¨ ahlt werden. Wir k¨ onnten f auf einer zweimal gr¨ oberen Skala durch eine Funktion f0 approximieren, die st¨ uckweise konstant auf den Intervallen (k, k + 1) ist: (4.7) f0 (t) = s0,k ϕ(t − k). k
Werden die Koeffizienten (s0,k ) als Mittelwerte u ¨ ber den Intervallen (k, k + 1) gew¨ ahlt, dann u uft man leicht die Relation ¨ berpr¨ s0,k =
1 (s1,2k + s1,2k+1 ). 2
Der lineare Raum der Funktionen in (4.7) wird mit V0 bezeichnet. Allgemeiner k¨ onnen wir st¨ uckweise konstante Approximationen auf den Intervallen (2−j k, 2−j (k + 1)), j ∈ Z, erhalten, wenn wir Funktionen der Form
4.2 Skalierungsfunktionen und Approximation 2
2
1.5
1.5
1
1
0.5
0.5
0 0
1
2
0 0
3
f0 (t)
1
2
57
3
ϕ(t − 1)
Abb. 4.3. Die Funktion in V0 und eine Skalierungsfunktion zum Skalenfaktor 1
fj (t) =
k
sj,k ϕ(2j t − k).
nehmen. Der entsprechende lineare Funktionenraum wird mit Vj bezeichnet. Die R¨ aume Vj heißen Approximationsr¨aume zur Skala 2−j . Definition der Multi-Skalen-Analyse Ein Nachteil der Haarschen Skalierungsfunktion besteht darin, daß sie unstetige Approximationen erzeugt. Ein andere Skalierungsfunktion ist die HutFunktion ⎧ ⎪ ⎨1 + t falls − 1 ≤ t ≤ 0, ϕ(t) = 1 − t falls 0 ≤ t ≤ 1, ⎪ ⎩ 0 andernfalls.
Nimmt man Linearkombinationen von ϕ(t − k) wie in (4.7), dann erh¨alt man stetige und st¨ uckweise lineare Approximationen. Die Approximationsr¨aume Vj bestehen in diesem Fall aus stetigen Funktionen, die st¨ uckweise linear auf den Intervallen (2−j k, 2−j (k + 1)) sind. Das liefert oft bessere Approximationen als die Haarsche Skalierungsfunktion. Wir entwickeln jetzt einen allgemeinen Rahmen f¨ ur die Konstruktion von Skalierungsfunktionen und Approximationsr¨aumen. Das ist der Begriff der Multi-Skalen-Analyse. Definition 4.4. Eine Multi-Skalen-Analyse (MSA) ist eine Familie von abgeschlossenen Unterr¨aumen Vj von L2 (R) mit folgenden Eigenschaften: 1. 2. 3. 4. 5.
Vj ⊂ Vj+1 f¨ ur alle j ∈ Z, f%(t) ∈ Vj ⇔ f (2t) ∈ Vj+1 f¨ ur alle j ∈ Z, 2 V ist dicht in L (R), &j j j Vj = {0}, Es existiert eine Skalierungsfunktion ϕ ∈ V0 derart, daß {ϕ(t − k)} eine Riesz-Basis f¨ ur V0 ist.
58
4 Multi-Skalen-Analyse 2
2
1.5
1.5
1
1
0.5
0.5
0
0
0.5
0.5
1
3
2
1
0
1
2
1
3
3
2
1
0
1
2
3
Abb. 4.4. Die Hut-Skalierungsfunktion und eine Funktion im entsprechenden V0 Raum
Die erste Bedingung besagt, daß die Funktionen in Vj+1 mehr Details enthalten, als die Funktionen in Vj : in einem gewissen Sinne f¨ ugen wir Informationen hinzu, wenn wir eine Funktion in einer feineren Skala approximieren. Die zweite Bedingung besagt, daß Vj+1 die Funktionen in einer zweimal feineren Skala approximiert als Vj ; dar¨ uber hinaus stellt diese Bedingung einen Zusamunf Bedingungen fordern, daß menhang zwischen den R¨ aumen Vj her. Die f¨ die Approximationsr¨ aume von den Skalierungsfunktionen aufgespannt werden. Wir f¨ uhren nun die gestreckten, verschobenen und normalisierten Skalierungsfunktionen ein: ϕj,k (t) = 2j/2 ϕ(2j t − k). Nach Skalieren mit 2j ist leicht zu sehen, daß die Skalierungsfunktionen ϕj,k f¨ ur ein festes j eine Riesz-Basis von Vj bilden. Demnach l¨aßt sich jedes fj ∈ Vj in der Form (4.8) fj (t) = sj,k ϕj,k (t) k
schreiben. Der Grund f¨ ur die Faktoren 2j/2 besteht darin, daß alle Skalierungsfunktionen die gleiche Norm haben: ϕj,k = ϕ. Die verbleibenden beiden Eigenschaften sind mehr technischer Natur. Sie werden zur Gew¨ ahrleistung dessen ben¨ otigt, daß die Wavelets, die wir bald einf¨ uhren werden, eine Riesz-Basis f¨ ur L2 (R) liefern. Die dritte Eigenschaft bedeutet im Grunde genommen, daß sich eine beliebige Funktion durch eine Funktion fj ∈ Vj beliebig genau approximieren l¨aßt, falls wir die Skala nur fein genug w¨ ahlen. Die vierte Bedingung besagt umgangssprachlich formuliert, daß die Nullfunktion die einzige Funktion ist, die in einer beliebig groben Skala approximiert werden kann. Eigenschaften der Skalierungsfunktion Die Definition der Multi-Skalen-Analyse erlegt der Skalierungsfunktion ziemlich starke Einschr¨ ankungen auf. Dar¨ uber hinaus m¨ochten wir, daß die Skalie-
4.2 Skalierungsfunktionen und Approximation
59
rungsfunktion einige weitere Eigenschaften besitzt. Sie sollte im Zeitbereich lokalisiert sein, das heißt, es soll ein schnelles Abklingen auf Null erfolgen, wenn |t| → ∞. Vorzugsweise sollte die Skalierungsfunktion einen kompakten Tr¨ager haben, das heißt, sie sollte außerhalb eines beschr¨ankten Intervalls gleich 0 sein. Diese Lokalisierungseigenschaft gew¨ahrleistet, daß die Koeffizienten (sj,k ) in den Approximationen (4.8) lokale Informationen u ¨ ber f enthalten. Man beachte, daß die von uns bis jetzt betrachteten Skalierungsfunktionen, das heißt, die Haarsche Skalierungsfunktion und die Hut-Skalierungsfunktion, jeweils einen kompakten Tr¨ ager haben. Wir m¨ochten außerdem, daß eine Skalierungsfunktion das Integral 1 hat: ∞ ϕ(t) dt = 1. (4.9) −∞
Diese Bedingung hat mit den Approximationseigenschaften der Skalierungsfunktion zu tun; wir werden diesen Sachverhalt in Abschnitt 4.7 eingehender diskutieren. Wir kommen jetzt auf die Definition der Multi-Skalen-Analyse zur¨ uck und sehen uns an, was das f¨ ur die Skalierungsfunktion bedeutet. Die Skalierungsaß Bedingung 1 liegt sie deswegen auch in V1 . funktion liegt in V0 und gem¨ Demnach l¨ aßt sie sich in der Form (4.10) ϕ(t) = 2 hk ϕ(2t − k) k
f¨ ur gewisse Koeffizienten (hk ) schreiben. Das ist die Skalierungsgleichung. Die ¨ Fourier-Transformation der Skalierungsgleichung liefert uns (vgl. Ubungsaufgabe 4.10) (4.11) wobei
ϕ(ω) = H(ω/2)ϕ(ω/2), H(ω) =
hk e−ikω .
k
Setzt man ω = 0 und verwendet man ϕ(0) = 1, dann ergibt sich H(0) = hk = 1, und wir sehen, daß sich die Koeffizienten (hk ) als Mittelungsfilter (averaging filter) interpretieren lassen. Tats¨achlich werden wir sp¨ ater sehen, daß auch H(π) = 0 gilt und deswegen ist H ein Tiefpaßfilter. Man kann beweisen, daß die Skalierungsfunktion durch diesen Filter und durch die Normalisierung (4.9) eindeutig definiert ist. Wiederholt man (4.11) und verwendet man erneut ϕ(0) = 1, dann ergibt sich (unter gewissen Bedingungen) die unendliche Produktformel ' H(ω/2j ). (4.12) ϕ(ω) = j>0
Die Eigenschaften der Skalierungsfunktion spiegeln sich in den Filterkoeffizienten (hk ) wider und Skalierungsfunktionen werden u ¨ blicherweise dadurch angegeben, daß man geeignete Filter konstruiert.
60
4 Multi-Skalen-Analyse
Beispiel 4.2. Der B-Spline der Ordnung N ist durch die Faltung SN (t) = χ(t) ∗ . . . ∗ χ(t) (N Faktoren) definiert, wobei χ(t) die Haarsche Skalierungsfunktion bezeichnet. Der B¨ Spline ist f¨ ur jedes N eine Skalierungsfunktion (Ubungsaufgabe 4.7). Die verschobenen Funktionen SN (t − k) liefern (N − 2)-mal stetig differenzierbare, st¨ uckweise polynomiale Approximationen des Grades N − 1. Die F¨alle N = 1 und N = 2 entsprechen der Haarschen Skalierungsfunktion bzw. der Hut-Skalierungsfunktion. Wird N gr¨ oßer, dann werden die Skalierungsfunktionen immer regul¨ arer, breiten sich aber auch immer mehr aus. In Kapitel 8 beschreiben wir Wavelets, die von B-Spline-Skalierungsfunktionen abgeleitet sind. ⊓ ⊔ Beispiel 4.3. Die sinc-Funktion ϕ(t) = sinc t =
sin πt πt
¨ ist eine weitere Skalierungsfunktion (Ubungsaufgabe 4.8). Sie hat keinen kompakten Tr¨ ager und das Abklingen erfolgt f¨ ur |t| → ∞ sehr langsam. Aus diesem Grund wird sie in der Praxis nicht verwendet. Dennoch hat die Funktion interessante theoretische Eigenschaften. Sie ist in einem gewissen Sinn dual zur Haarschen Skalierungsfunktion, denn ihre Fourier-Transformation ist durch die Boxfunktion 1 falls − π < ω < π, ϕ(ω) = 0 andernfalls, gegeben. Es folgt, daß jede Funktion in V0 durch die Cut-off-Frequenz π bandbegrenzt ist. In der Tat besagt das Sampling Theorem (vgl. Abschnitt 2.7), daß jede derartige bandbegrenzte Funktion f aus ihren Sample-Werten f (k) durch f (t) = f (k) sinc(t − k) k
rekonstruiert werden kann. Somit ist V0 gleich der Menge der bandbegrenzten Funktionen mit der Cut-off-Frequenz π. Die R¨ aume Vj werden durch Skalieren zur Menge der Funktionen, die auf die Frequenzb¨ander (−2j π, 2j π) bandbegrenzt sind. ⊓ ⊔ ¨ Ubungsaufgaben zu Abschnitt 4.2 ¨ Ubungsaufgabe 4.5. Zeigen Sie: f (t) ∈ Vj ⇔ f (2−j t) ∈ V0 . ¨ Ubungsaufgabe 4.6. Beweisen Sie: {ϕj,k }k∈Z ist bei festem j eine RieszBasis von Vj , falls {ϕ0,k }k∈Z eine Riesz-Basis von V0 ist.
4.3 Wavelets und Detail-R¨ aume
61
¨ Ubungsaufgabe 4.7. Leiten Sie die Skalierungsgleichung f¨ ur die SplineSkalierungsfunktionen ab. Hinweis: Man arbeite im Fourier-Bereich und zeige, daß ϕ(ω) = H(ω/2)ϕ(ω/2), wobei H(ω) 2π-periodisch ist. Berechnen Sie die Koeffizienten (hk ).
¨ Ubungsaufgabe 4.8. Leiten Sie die Skalierungsgleichung f¨ ur die sinc-Skalierungsfunktion ab. Hinweis: Man gehe so vor, wie in der vorhergehenden ¨ Ubungsausfgabe. ¨ Ubungsaufgabe 4.9. Zeigen Sie, daß sich die Skalierungsgleichung allgemeiner in folgender Form schreiben l¨ aßt: √ hl ϕj+1,l+2k . ϕj,k = 2 l
¨ Ubungsaufgabe 4.10. Beweisen Sie die Identit¨at (4.11). ¨ Ubungsaufgabe 4.11. Beweisen Sie (4.12). Wozu braucht man ϕ(0) = 1?
4.3 Wavelets und Detail-R¨ aume
Wir gehen nun zur Beschreibung der Differenz zweier aufeinanderfolgender Approximationsr¨aume bei der Multi-Skalen-Analyse u ¨ ber, das heißt, zu den Wavelet- oder Detail-R¨ aumen. Das Haar-Wavelet Die Multi-Skalen-Analyse erm¨ oglicht es uns, Funktionen auf unterschiedlichen Aufl¨ osungsebenen zu approximieren. Wir werfen nun einen Blick auf die Approximationen einer Funktion f in zwei aufeinanderfolgenden Skalen f0 ∈ V0 und f1 ∈ V1 . Die Approximation f1 enth¨ alt mehr Details als f0 und die Differenz ist die Funktion d0 = f1 − f0 . uckweise konWir kommen wieder auf das Haar-System zur¨ uck. Hier ist f1 st¨ uckstant auf den Intervallen (k/2, (k +1)/2) mit den Werten s1,k und f0 ist st¨ weise konstant auf (k, k + 1) mit den Werten s0,k , die paarweise Mittelwerte der s1,k sind: (4.13)
s0,k =
1 (s1,2k + s1,2k+1 ). 2
In Abb. 4.5 haben wir die Funktion d0 im Haar-System graphisch dargestellt. Sie ist st¨ uckweise konstant auf den Intervallen (k/2, (k + 1)/2) und somit ist d0 ∈ V1 . Wir betrachten jetzt das Intervall (k, k + 1) in Abb. 4.6.
62
4 Multi-Skalen-Analyse
0.5
1.5 1 0.5
0
0 0.5 1
0.5 0
1
2
1.5 0
3
1
2
d0 (t)
3
ψ(t − 1)
Abb. 4.5. Das Haar-Wavelet und eine Funktion im entsprechenden W0 Raum
s1,2k s0,k s1,2k+1
w0,k
k
k+1/2
k+1
k
k+1/2
k+1
k
k+1/2
k+1
−w0,k Abb. 4.6. Zwei Skalen und ihre Differenz
Wir bezeichnen den Wert von d0 in der ersten H¨alfte durch w0,k . Der Wert in der zweiten H¨ alfte ist dann −w0,k und beide Werte messen die Abweichung der Funktion f1 von ihrem Mittelwert auf dem Intervall (k, k + 1): (4.14)
w0,k =
1 (s1,2k − s1,2k+1 ). 2
Das Haar-Wavelet wird definiert durch ⎧ ⎪ falls 0 < t < 1/2, ⎨1 ψ(t) = −1 falls 1/2 < t < 1, ⎪ ⎩ 0 andernfalls. Mit diesem Wavelet k¨ onnen wir d0 in der Form w0,k ψ(t − k) (4.15) d0 (t) = k
schreiben, mit Wavelet-Koeffizienten (w0,k ) in der Skala 1 = 20 . Wir m¨ochten das auf eine beliebige Multi-Skalen-Analyse verallgemeinern und geben deswegen folgende
4.3 Wavelets und Detail-R¨ aume
63
Definition 4.5. Bei einer allgemeinen Multi-Skalen-Analyse wird eine Funktion ψ als Wavelet bezeichnet, falls der von den Funktionen ψ(t − k) aufgespannte Detail-Raum W0 ein Komplement von V0 in V1 ist. Hiermit ist gemeint, daß sich ein beliebiges f1 ∈ V1 in eindeutiger Form als f1 = f0 + d0 schreiben l¨aßt, wobei f0 ∈ V0 und d0 ∈ W0 . Wir schreiben das formal als V1 = V0 ⊕ W0 . Und schließlich wird von den Wavelets ψ(t − k) gefordert, daß sie eine Riesz-Basis von W0 bilden. ⊓ ⊔ Man beachte, daß der Raum W0 nicht eindeutig bestimmt sein muß. Jedoch ist die Zerlegung f1 = f0 + d0 eindeutig, wenn das Wavelet ψ (der Raum W0 ) gew¨ ahlt wird. Fordern wir aber, daß W0 orthogonal zu V0 ist, dann ist W0 eindeutig bestimmt. Beispiel 4.4. Ist die Skalierungsfunktion die Hut-Funktion, dann kann das Wavelet als diejenige Funktion in V1 gew¨ ahlt werden, deren Werte bei halbierten ganzen Zahlen angenommen werden: f (1/2) = 3/2, f (1) = f (0) = −1/2,
f (3/2) = f (−1/2) = −1/4. Dieses Wavelet ist in Abb. 4.7 dargestellt.3 In diesem Fall sind V0 und W0 nicht orthogonal. ⊓ ⊔ Beispiel 4.5. F¨ ur die Skalierungsfunktion sinc aus Beispiel 4.3 w¨ahlen wir das Wavelet als 1.5
2 1.5
1 1 0.5
0.5 0
0 0.5 0.5
2
1
0
1
2
1
2
1
0
1
2
Abb. 4.7. Die Hut-Skalierungsfunktion und ein st¨ uckweise lineares Wavelet spannen W0 auf
3
Zusatz bei der Korrektur: Das Wavelet von Abb. 4.7 ist um den Wert 0, 5 nach rechts zu verschieben.
64
4 Multi-Skalen-Analyse
ψ(ω) =
1 0
falls π < |ω| < 2π, andernfalls.
¨ Man sieht leicht, daß ψ(t) = 2 sinc 2t − sinc t (vgl. Ubungsaufgabe 4.14). Das ist das sinc-Wavelet. Der Raum W0 ist die Menge derjenigen Funktionen, die auf das Frequenzband π < |ω| < 2π bandbegrenzt sind. Allgemeiner enth¨alt der Raum Wj alle Funktionen, die auf das Frequenzband 2j π < |ω| < 2j+1 π bandbegrenzt sind. ⊓ ⊔ Eigenschaften von Wavelets Die Funktion ψ wird mitunter Mother-Wavelet genannt. Wie bei der Skalierungsfunktion m¨ ochten wir, daß die Funktion ψ im Zeitbereich lokalisiert ist. Ebenso m¨ ochten wir, daß sie das Integral Null hat: ψ(t) dt = 0 oder ψ(0) = 0. Somit muß die Funktion oszillieren. Das wird auch als Ausl¨ oschungseigenschaft bezeichnet und h¨ angt damit zusammen, daß man mit Wavelets Differenzen darstellt. Die Function ψ ist eine Welle ( wave“) die ” sich schnell erhebt und wieder abklingt – hiervon r¨ uhrt der Begriff Wavelet“ ” (Wellchen, kleine Welle). Wegen ψ ∈ V1 l¨ aßt sich das Wavelet in der Form (4.16) ψ(t) = 2 gk ϕ(2t − k) k
mit gewissen Koeffizienten (gk ) schreiben. Das ist die Wavelet-Gleichung. Eine Fourier-Transformation liefert ψ(ω) = G(ω/2)ϕ(ω/2),
(4.17) wobei
G(ω) =
gk e−ikω .
Unter Verwendung von ϕ(0) = 1 und ψ(0) = 0 ergibt sich G(0) = gk = 0. Deswegen k¨ onnen die Koeffizienten (gk ) als Differenzfilter interpretiert werden. Sp¨ ater werden wir sehen, daß auch G(π) = 1 gilt und G tats¨achlich ein Hochpaß-Filter ist. Das Wavelet und alle seine Eigenschaften werden bei vorgegebener Skalierungsfunktion durch diesen Filter bestimmt. Die Wavelet-Zerlegung Die gestreckten und verschobenen Wavelets ψj,k sind definiert durch ψj,k (t) = 2j/2 ψ(2j t − k).
4.3 Wavelets und Detail-R¨ aume
65
Die Detail-R¨ aume Wj sind jeweils definiert als die Menge der Funktionen der Form (4.18) dj (t) = wj,k ψj,k (t). k
Aus Definition 4.5 folgt, daß sich ein beliebiges f1 ∈ V1 in der Form f1 = f0 +d0 zerlegen l¨ aßt, wobei f0 ∈ V0 eine Approximation in einer zweimal gr¨oberen Skala ist und d0 ∈ W0 die verlorengegangenen Details enth¨alt. Nach Skalieren mit 2j sehen wir, daß sich eine Funktion fj+1 ∈ Vj+1 in der Form fj+1 = fj +dj zerlegen l¨ aßt, wobei fj ∈ Vj und dj ∈ Wj , das heißt, Vj+1 = Vj ⊕ Wj . Beginnt man mit der feinsten Skala J und wiederholt die Zerlegung fj+1 = fj + dj bis zu einem gewissen Level j0 , dann l¨aßt sich jedes fJ ∈ VJ in der Form fJ (t) = dJ−1 (t) + dJ−2 (t) + . . . + dj0 (t) + fj0 (t) =
J−1
j=j0
wj,k ψj,k (t) +
sj0 ,k ϕj0 ,k (t)
k
k
schreiben. Das l¨ aßt sich mit Hilfe von Approximations- und Detail-R¨aumen folgendermaßen ausdr¨ ucken: VJ = WJ−1 ⊕ WJ−2 ⊕ . . . ⊕ Wj0 ⊕ Vj0 . Unter Verwendung der vierten Bedingung in der Definition der MultiSkalen-Analyse l¨ aßt sich zeigen, daß fj0 in L2 gegen 0 geht, wenn j0 → −∞. Die dritte Bedingung impliziert nun, daß man – indem J immer gr¨oßer gew¨ahlt wird – eine Funktion f durch N¨ aherungsfunktionen fJ approximieren kann, die immer n¨ aher bei f liegen. F¨ ur J → ∞ erh¨alt man demnach die WaveletZerlegung von f wj,k ψj,k (t). (4.19) f (t) = j,k
Wir haben hiermit den Beweis daf¨ ur angedeutet, daß {ψj,k } eine Basis f¨ ur L2 (R) ist. Jedoch bleibt noch die Aufgabe, den Hochpaß-Filter G zu konstruieren, der das Mother-Wavelet ψ bestimmt. Die obige Zerlegung Vj+1 = Vj ⊕ Wj ist nicht eindeutig. Es gibt viele M¨ oglichkeiten, das Wavelet ψ und die entsprechenden Detail-R¨aume Wj zu w¨ ahlen. Jede solche Wahl entspricht der Wahl eines Hochpaß-Filters G. Im n¨ achsten Abschnitt beschreiben wir eine spezielle Wahl, die uns ein orthogonales System oder eine orthogonale Wavelet-Basis liefert. Das entspricht der Wahl von H und G als Filter in einer orthogonalen Filterbank. Danach diskutieren wir den allgemeineren Fall der biorthogonalen Systeme, die den biorthogonalen Filterb¨ anken entsprechen.
66
4 Multi-Skalen-Analyse
Wir schließen den Abschnitt mit einem Blick auf die Wavelet-Zerlegung im Frequenzbereich. Wir hatten fr¨ uher gesehen, daß es sich im Falle der Skalierungsfunktion sinc bei den R¨ aumen Vj um R¨aume von Funktionen handelt, die auf die Frequenzb¨ ander (0, 2j π) (tats¨achlich (−2j π, 2j π)) bandbegrenzt sind, aber wir ignorieren negative Frequenzen, um die Diskussion zu vereinfachen). Die Detail-R¨ aume sind Mengen von Funktionen, die auf die Frequenzb¨ ander (2j π, 2j+1 π) bandbegrenzt sind. Die Wavelet-Zerlegung l¨aßt sich in diesem Fall als Zerlegung des Frequenzbereiches auffassen (vgl. Abb. 4.8). F¨ ur andere Wavelets sollte diese Frequenz-Zerlegung approximativ interpretiert werden, denn die Wavelets ψj,k haben Frequenzinhalte außerhalb des Bandes (2j π, 2j+1 π). Mit anderen Worten: Die Frequenzb¨ander u ¨berlappen. ¨ Die Gr¨ oße der Uberlappung h¨ angt vom Mother-Wavelet ab.
V−3
W−3
W−2
W−1 π/2
0
π
Abb. 4.8. Die Wavelet-Zerlegung im Frequenzbereich
¨ Ubungsaufgaben zu Abschnitt 4.3 ¨ Ubungsaufgabe 4.12. Zeigen Sie, daß das Wavelet in Beispiel 4.4 die Differenz von V1 und V0 aufspannt. ¨ ur Ubungsaufgabe 4.13. Man zeige: Jede Funktion fj+1 ∈ Vj+1 l¨aßt sich f¨ j = 0 in der Form fj+1 = fj + dj schreiben, wobei dj ∈ Wj . (F¨ ur j = 0 ist die Aussage per Definition richtig.) ¨ Ubungsaufgabe 4.14. Zeigen Sie, daß ψ(t) = sinc 2t − sinc t, falls ψ das sinc-Wavelet von Beispiel 4.3 ist. Hinweis: Man arbeite im Fourier-Bereich.
4.4 Orthogonale Systeme In diesem Abschnitt setzen wir voraus, daß der Wavelet-Raum W0 orthogonal zum Approximationsraum V0 ist. Das bedeutet, daß wir eine orthogonale Zerlegung von V1 in V1 = V0 ⊕ W0 erhalten und schließlich bekommen wir eine orthonormale Wavelet-Basis in L2 (R).
4.4 Orthogonale Systeme
67
Orthogonalit¨ atsbedingungen Die erste Forderung lautet, daß die Skalierungsfunktionen ϕ(t − k) eine orthogonale Basis von V0 bilden, das heißt, ∞ ϕ(t − k)ϕ(t − l) dt = δk,l . −∞
Unter Verwendung der Skalierungsgleichung (4.10) k¨onnen wir diese Forde¨ rung in eine Bedingung f¨ ur die Koeffizienten (hk ) transformieren (vgl. Ubungsaufgabe 4.15): hl hl+2k = δk /2. (4.20) l
Wir fordern auch, daß die Wavelets ψ(t − k) eine orthogonale Basis von W0 bilden: ∞ ψ(t − k)ψ(t − l) dt = δk,l . −∞
Mit Hilfe der Koeffizienten (gk ) ausgedr¨ uckt, wird das zu gl gl+2k = δk /2. (4.21) l
Und schließlich m¨ ussen die Funktionen in V0 orthogonal zu den Funktionen in W0 sein, was formal als V0 ⊥ W0 geschrieben wird. (Abb. 4.9). Dann m¨ ussen die Skalierungsfunktionen ϕ(t− k) orthogonal zu jedem Wavelet ψ(t − l) sein: ∞ ϕ(t − k)ψ(t − l) dt = 0 f¨ ur alle k und l. −∞
Wj
dj
* fj+1 Vj 6
fj
Abb. 4.9. Vj ⊥ Wj
68
4 Multi-Skalen-Analyse
¨ F¨ ur die Filterkoeffizienten bedeutet das Folgendes (vgl. Ubungsaufgabe 4.17): hm+2k gm+2l = 0. (4.22) m
Alle oben angegebenen Orthogonalit¨ atsbedingungen lassen sich in eine beliebige Skala transponieren. Unter Verwendung der Skalarproduktschreibweise haben wir ϕj,k , ϕj,l = δk,l , ψj,k , ψj,l = δk,l , ϕj,k , ψj,l = 0. Mit anderen Worten: {ϕj,k } ist eine orthonormale Basis von Vj , {ψj,k } ist eine orthonormale Basis von Wj und Vj ⊥ Wj . Die Approximation fj ∈ Vj einer Funktion f kann als die orthogonale Projektion auf Vj gew¨ahlt werden, die wir mit Pj bezeichnen. Die Approximation l¨ aßt sich folgendermaßen berechnen: fj = Pj f = f, ϕj,k ϕj,k . k
Das Detail dj wird zur Projektion von f auf Wj : dj = Qj f = f, ψj,k ψj,k . k
Ausgedr¨ uckt durch die Filterfunktionen H(ω) und G(ω) werden die Beziehungen (4.20) - (4.22) zu 2
(4.23)
2
|H(ω)| + |H(ω + π)| = 1, 2 2 |G(ω)| + |G(ω + π)| = 1, H(ω)G(ω) + H(ω + π)G(ω + π) = 0.
Wir werden achsten ur √ Abschnitt sehen, daß das die Bedingungen daf¨ √ im n¨ sind, daß 2 H und 2 G Hoch- und Tiefpaß-Filter in einer orthogonalen Filterbank4 sind. Das ist eine entscheidende Feststellung, denn die Konstruktion von orthogonalen Skalierungsfunktionen erweist sich als ¨aquivalent zur Konstruktion von orthogonalen Filterb¨ anken. Beispiel 4.6. Wir geben nun ein konkretes Beispiel daf¨ ur an, wie man orthogonale Wavelets mit Hilfe einer orthogonalen Filterbank konstruiert. Wir beginnen mit dem Daubechies-Produktfilter mit N = 5 (vgl. Abschnitt 3.5). Wir verwenden danach die orthogonale Faktorisierung der Minimalphase, und das liefert uns die sogenannte orthogonale Daubechies-10-Filterbank. Die entsprechende Skalierungsfunktion und das Wavelet k¨onnen nun mit Hilfe des in Kapitel 8 erl¨ auterten Kaskadenalgorithmus numerisch berechnet werden. 4
√ Man beachte, daß der Faktor 2 in den Filtern von Kapitel 3 enthalten ist. Die rechten Seiten von (4.23) werden dann durch 2 ersetzt.
4.4 Orthogonale Systeme
69
Wir haben die Daubechies-10-Skalierungsfunktion und das Mother-Wavelet in Abb. 4.10 graphisch) dargestellt. Man beachte, daß diese glatter sind als die Hut-Skalierungsfunktion und das entsprechende Wavelet (und nat¨ urlich sind sie glatter als im Haar-Fall). Der Preis hierf¨ ur ist die gr¨oßere Tr¨agerbreite. In Kapitel 8 werden wir die meisten Wavelet-Basen beschreiben, die bei Anwendungen auftreten. ⊓ ⊔ 1.5
1.5 1
1 0.5 0.5
0 0.5
0 1 0.5
2
0
2
4
6
8
1.5
4
2
0
2
4
6
Abb. 4.10. Daubechies-10-Skalierungsfunktion und Wavelet
Charakterisierungen im orthonormalen Fall Wir werden jetzt sehen, daß eine orthogonale Filterbank nicht immer zu einer orthonormalen Wavelet-Basis f¨ uhrt. Zun¨ achst muß das unendliche Produkt (4.12) konvergieren. Falls es konvergiert, muß es keine Funktion in L2 erzeugen. Man betrachte zum Beispiel den einfachsten Tiefpaß-Filter hk = δk , den Einheitsfilter. Zusammen mit dem Hochpaß-Filter gk = δk−1 ergibt das eine orthogonale Filterbank. Diese heißt Lazy-Filterbank, denn sie tut nichts weiter, als das Eingabesignal in Samples aufzuteilen, die geradzahlig bzw. ungeradzahlig indiziert sind. Die Filterfunktion ist H(ω) = 1 und die unendliche Produktformel impliziert ϕ(ω) = 1. Die Skalierungsfunktion ist dann die Diracsche delta-Distribution, die nicht einmal eine Funktion ist. Sogar dann, wenn das Produkt eine Funktion in L2 liefert, m¨ ussen wir sicherstellen, daß auch die Bedingungen 3 und 4 in der Definition der Multi-Skalen-Analyse (Definition 4.4) erf¨ ullt sind. Eine zus¨atzliche einfache hinreichende Bedingung daf¨ ur, daß der – die Skalierungsfunktion bestimmende – Tiefpaß-Filter H(ω) die Bedingungen 3 und 4 erf¨ ullt, besteht in Folgendem: H(ω) > 0 f¨ ur |ω| ≤ π/2 (und ϕ(0) ˆ = 1). Wir geben jetzt exakte Charakterisierungen f¨ ur Skalierungsfunktionen und Wavelets in einer orthogonalen Multi-Skalen-Analyse. Alle Gleichungen sollen fast u ¨ berall gelten. Der Leser, der mit diesem Begriff nicht vertraut ist, m¨ oge fast u ¨ berall mit Ausnahme einer ¨ berall“ folgendermaßen definieren: u ” ” endlichen Anzahl von Punkten“.
70
4 Multi-Skalen-Analyse
Satz 4.1. Gelten die folgenden drei Bedingungen (fast ¨ uberall) f¨ ur eine Funktion ϕ mit ϕ = 1, so ist das ¨aquivalent zu der Aussage, daß ϕ eine Skalierungsfunktion f¨ ur eine orthogonale Multi-Skalen-Analyse von L2 (R) ist. 2 1. |ϕ(ω + 2πk)| = 1, k
2. lim ϕ(2 −j ω) = 1, j→∞
3. ϕ(2ω) = H(ω)ϕ(ω) f¨ ur eine 2π-periodische Funktion H.
Die erste Bedingung ist a ¨quivalent zur Orthonormalit¨at der ganzzahligen Translate ϕ(t−k). Bei der zweiten Bedingung handelt es sich im Wesentlichen um die Approximationseigenschaft der Multi-Skalen-Analyse und die dritte Eigenschaft ist die Skalierungsgleichung. Satz 4.2. Gelten die folgenden drei Bedingungen (fast ¨ uberall) f¨ ur eine Funktion ψ mit ψ = 1, so ist das ¨aquivalent zu der Aussage, daß die Funktion eine orthonormale Basis ψj,k hat, die mit einer Multi-Skalen-Analyse von L2 (R) zusammenh¨angt. 1.
$2 $$ j ω)$$ = 1, $ψ(2 j
2.
j≥0
3.
j (ω + 2kπ)) = 0 j ω)ψ(2 ψ(2
f¨ ur alle ungeraden ganzen Zahlen k,
$2 $$ j (ω + 2kπ))$$ = 1. $ψ(2 j≥1 k
Die ersten beiden Bedingungen sind ¨ aquivalent zur orthonormalen BasisEigenschaft von ψj,k in L2 (R) und die dritte Eigenschaft bezieht sich auf eine entsprechende Skalierungsfunktion. Allgemein gesprochen bedeutet die erste Bedingung, daß die Linearkombinationen von ψj,k dicht in L2 (R) sind, und die zweite Bedingung bezieht sich auf die Orthogonalit¨at. ¨ Ubungsaufgaben zu Abschnitt 4.4 ¨ Ubungsaufgabe 4.15. Beweisen Sie: Die Bedingung f¨ ur die Orthogonalit¨at der Skalierungsfunktionen ϕ(t − k) impliziert (4.20). Hinweis: Zun¨achst kann man l = 0 voraussetzen (warum?). Danach zeige man, daß
4.5 Die diskrete Wavelet-Transformation
δk =
∞
−∞
=
∞
−∞
=4
m
l
∞
−∞
l,m
=2
ϕ(t)ϕ(t − k) dt ( )( ) 2 hl ϕ(2t − l) 2 hm ϕ(2t − 2k − m) dt
l,m
=2
71
hl hm ϕ(2t − l)ϕ(2t − 2k − m) dt
∞
−∞
hl hm ϕ(t − l)ϕ(t − 2k − m) dt
hl hl−2k .
l
¨ Ubungsaufgabe 4.16. Zeigen Sie: (4.20) ist ¨aquivalent zur ersten Gleichung in (4.23). ¨ Ubungsaufgabe 4.17. Beweisen Sie: Die Bedingung, daß die Skalierungsfunktionen ϕ(t − k) orthogonal zu den Wavelets ψ(t − k) sind, impliziert (4.22).
4.5 Die diskrete Wavelet-Transformation Wir beschreiben nun, wie man die Skalierungs- und Wavelet-Koeffizienten (sj0 ,k ) und (wj,k ) in der Wavelet-Zerlegung fJ (t) =
J−1
j=j0
wj,k ψj,k (t) +
k
sj0 ,k ϕj0 ,k (t)
k
berechnet. Die Berechnung der Koeffizienten erfolgt mit Hilfe von Filterb¨anken. Der Einfachheit halber leiten wir diese Beziehung zwischen Multi-SkalenAnalysen und Filterb¨ anken im orthogonalen Fall ab. Der biorthogonale Fall ist ganz ¨ ahnlich, aber die Notation wird etwas unhandlicher. Wir nehmen an, daß wir die Skalierungskoeffizienten sJ,k = f, ϕJ,k einer Funktion f in einer gewissen feinsten Skala J kennen. In der Praxis stehen uns u ugung und wir m¨ ussen ¨blicherweise nur Sample-Werte f (2−J k) zur Verf¨ die Skalierungskoeffizienten numerisch aus diesen Sample-Werten berechnen. Dieser Vorgang ist unter der Bezeichnung Pr¨a-Filterung (pre-filtering) bekannt. Es ist eine u ¨bliche Praxis, die Skalierungskoeffizienten einfach durch die Sample-Werte zu ersetzen. Der dadurch entstehende Effekt und weitere Aspekte der Pr¨ a-Filterung werden in Kapitel 15 behandelt. Die Forward-Wavelet-Transformation Angenommen, wir kennen die Skalierungskoeffizienten sj+1,k = f, ϕj+1,k in einer gewissen Skala j + 1. Wir teilen fj+1 in eine gr¨obere Approximation fj
72
4 Multi-Skalen-Analyse
und Details dj auf, das heißt, fj+1 (t) = fj (t) + dj (t), oder schreiben auf explizitere Weise (4.24) sj+1,k ϕj+1,k (t) = sj,k ϕj,k (t) + wj,k ψj,k (t), k
k
k
wobei sj,k = f, ϕj,k und wj,k = f, ψj,k . Skalarmultiplikation auf beiden Seiten mit ϕj,l liefert uns zusammen mit den Orthogonalit¨atsbedingungen f¨ ur ¨ die Skalierungsfunktionen und Wavelets (Ubungsaufgabe 4.18) sl+1,j ϕl+1,j , ϕl,k . sl,k = l
Aus der Skalierungsgleichung ϕj,k =
√ hm ϕj+1,m+2k 2 m
erhalten wir ϕj+1,l , ϕj,k =
√ √ 2 hm ϕj+1,l , ϕj+1,m+2k = 2 hl−2k . m
Mit einer ¨ ahnlichen Rechnung f¨ ur die Wavelet-Koeffizienten leitet man folgende Formeln ab: √ √ (4.25) sj,k = 2 hl−2k sj+1,l und wj,k = 2 gl−2k sj+1,l . l
l
Die Skalierungs- und Wavelet-Koeffizienten in einer gr¨oberen Skala werden demnach berechnet, indem man die Skalierungskoeffizienten √in der feineren √ Skala mit Hilfe der Tiefpaß- und Hochpaß-Filter 2 H und 2 G durch den Analyseteil der orthogonalen Filterbank schickt. Wiederholt man das rekursiv, indem man mit den Koeffizienten (sJ,k ) beginnt, dann erh¨ alt man die Wavelet-Koeffizienten (wj,k ) f¨ ur j = j0 , . . . , J − 1 und die Skalierungskoeffizienten (sj0 ,k ) in der gr¨obsten Skala. Dieses rekursive Schema wird als Fast Forward Wavelet Transform 5 bezeichnet. Beginnt man mit N Skalierungskoeffizienten in der feinsten Skala, dann bel¨auft sich der Rechenaufwand auf ungef¨ ahr 4M N Operationen, wobei M die Filterl¨ange bezeichnet. Man vergleiche das mit dem FFT-Algorithmus, bei dem der Rechenaufwand 2N log N Operationen betr¨ agt.
5
Man verwendet auch die Bezeichnungen Vorw¨ arts-Wavelet-Transformation“ und ” schnelle Vorw¨ arts-Wavelet-Transformation“. ”
4.5 Die diskrete Wavelet-Transformation
H∗
73
H∗
↓2
sJ −2
G∗
↓2
wJ −2
↓2
sJ G∗
↓2
wJ −1
Abb. 4.11. Die Forward-Wavelet-Transformation als iterierte Filterbank
Die Forward-Wavelet-Transformation l¨ auft auf die Berechnung von f (t) ≈ fJ (t) =
J−1
j=j0
k
f, ψj,k ψj,k (t) +
k
f, ϕj0 ,k ϕj0 ,k (t)
hinaus. F¨ ur j0 → −∞ und J → ∞ ergibt sich f (t) = f, ψj,k ψj,k (t) j,k
als Entwicklung von f in der ON-Basis {ψj,k }. Die inverse Wavelet-Transformation Nat¨ urlich gibt es auch eine inverse Wavelet-Transformation. Da wir sj = (sj,k )k∈Z und wj = (wj,k )k∈Z aus sj+1 mit Hilfe des Analyseteils einer Filterbank berechnen, l¨ aßt sich sj+1 rekonstruieren, indem man sj und wj in den Syntheseteil eingibt: √ sj+1,k = 2 (hk−2l sj,l + gk−2l wj,l ). l
onnen wir demnach sj0 +1 rekonstruieren und das liefert Aus sj0 und wj0 k¨ zusammen mit wj0 +1 den Wert sj0 +2 und so weiter, bis wir schließlich sJ erhalten. Das ist die Fast Inverse Wavelet Transform (vgl. Abb. 4.12).
sj0
↑2
H +
wj0
↑2
↑2
H +
G wj0 +1
↑2
G
Abb. 4.12. Die inverse Wavelet-Transformation als iterierte Filterbank
sj0 +2
74
4 Multi-Skalen-Analyse
Man beachte, daß wir weder die Skalierungsfunktion noch das Wavelet explizit in der Vorw¨ arts-Wavelet-Transformation oder in der inversen WaveletTransformation verwenden, sondern lediglich die orthogonale Filterbank. Zur Rekonstruktion der Sample-Werte f (2−J k) aus den Feinskalen-Koeffizienten (sJ,k ) m¨ ussen wir einen Post-Filterungs-Schritt durchf¨ uhren. Wir diskutieren diesen Schritt in Kapitel 15. ¨ Ubungsaufgaben zu Abschnitt 4.5 ¨ Ubungsaufgabe 4.18. Beweisen Sie alle Schritte in der Ableitung der Filtergleichungen (4.25). ¨ Ubungsaufgabe 4.19. Es sei vorausgesetzt, daß {ψj,k } eine orthonormale Basis von L2 (R) ist. Man setze Ψ (t) = 21/2 ψ(2t), so daß Ψj,k = ψj+1,2k . Zeigen Sie: {Ψj,k } ist ein orthonormales System, jedoch keine (Riesz-) Basis. Hinweis: Das System l¨ aßt mindestens alle ψj,2l+1 aus. Das heißt, alle Funktionen ψj,2l+1 haben die Koeffizienten 0. Warum ist das ein Widerspruch dazu, daß {Ψj,k } eine Riesz-Basis ist?
4.6 Biorthogonale Systeme Biorthogonalit¨ atsbedingungen In einem biorthogonalen System haben wir auch eine duale Multi-SkalenAnalyse mit Skalierungsfunktionen ϕ j,k und Wavelets ψj,k sowie mit den ent*j . Die duale Skasprechenden Approximations- und Detail-R¨ aumen Vj und W lierungsfunktion ϕ erf¨ ullt die Skalierungsgleichung hk ϕ(2t − k). (4.26) ϕ(t) =2 F¨ ur das duale Mother-Wavelet gilt die duale Wavelet-Gleichung =2 (4.27) ψ(t) gk ϕ(2t − k).
Wir haben die folgenden Biorthogonalit¨atsbedingungen f¨ ur die Skalierungsfunktionen und Wavelets: ϕj,k , ϕ j,l = δk,l , ψj,k , ψj,l = δk,l , ϕj,k , ψj,l = 0, ϕ j,k , ψj,l = 0.
*j bzw. Vj ⊥ Wj Die beiden letztgenannten Bedingungen bedeuten, daß Vj ⊥ W (vgl. Abb. 4.13). Nach einigen Rechnungen, die den Rechnungen im orthogo-
4.6 Biorthogonale Systeme fj W
75
Wj
f
* j+1 dj fj XX XX X Vj XXXX XX XX Vej fj and Vej ⊥ Wj Abb. 4.13. Vj ⊥ W
nalen Fall ¨ ahneln, erhalten wir die folgenden Biorthogonalit¨atsbedingungen f¨ ur die Filterfunktionen H(ω), H(ω), G(ω) and G(ω): (4.28)
+ H(ω)H(ω) G(ω)G(ω) + G(ω)H(ω) + H(ω)G(ω) +
+ π)H(ω + π) = H(ω + π)G(ω + π) = G(ω + π)H(ω + π) = G(ω + π)G(ω + π) = H(ω
1, 1, 0, 0.
F¨ uhren wir die Modulationsmatrix
H(ω) H(ω + π) M (ω) = G(ω) G(ω + π)
*(ω), dann k¨onnen wir Gleichung ein und verfahren in ¨ ahnlicher Weise mit M (4.28) in der folgenden kompakteren Form schreiben: t
*(ω)t = I. M (ω)M
*(ω) M (ω) = I, und in ausgeschriebener Form ergibt das Ebenso gilt auch M
(4.29)
H(ω)H(ω) + G(ω)G(ω) = 1, H(ω)H(ω + π) + G(ω)G(ω + π) = 0.
Deswegen lassen sich die vier Gleichungen in (4.28) auf zwei Gleichungen reduzieren. Die letztgenannten Gleichungen sind die perfekten Rekonstruktionsbedingungen (3.8)-(3.9) f¨ ur Filterb¨ anke, transformiert in √ √ den Fourier-Bereich √ √ 2 G und 2 G Hoch¨ (Ubungsaufgabe 4.21). Das bedeutet, daß 2 H, 2 H, und Tiefpaß-Filter in einer biorthogonalen Filterbank sind. Wir leiten nun einen Zusammenhang zwischen dem Tiefpaß-Filter und dem ¨ Hochpaß-Filter ab. Die Cramersche Regel liefert (vgl. Ubungsaufgabe 4.22) (4.30)
G(ω + π) H(ω) = ∆(ω)
H(ω + π) und G(ω) =− , ∆(ω)
76
4 Multi-Skalen-Analyse
wobei ∆(ω) = det M (ω). In der Praxis m¨ ochten wir oft endliche Filter haben, die Wavelets und Skalierungsfunktionen mit kompaktem Tr¨ager entsprechen. Man kann dann zeigen, daß ∆(ω) die Form ∆(ω) = Ce−Liω f¨ ur eine gewisse ungerade ganze Zahl L und eine Konstante C mit |C| = 1 hat. Unterschiedliche Auswahlm¨ oglichkeiten liefern im Wesentlichen das gleiche Wavelet: der einzige Unterschied ist eine ganzzahlige Translation und die Konstante C. Eine u ¨ bliche Wahl ist C = 1 und L = 1; diese liefert die Alternating-FlipKonstruktion (vgl. Gleichung 3.10): (4.31)
+ π) und G(ω) = −e−iω H(ω
G(ω) = −e−iω H(ω + π),
oder, durch die Filterkoeffizienten ausgedr¨ uckt, h1−k gk = (−1)k
und
gk = (−1)k h1−k .
Das stellt uns vor die Aufgabe, geeignete Tiefpaß-Filter zu konstruieren, die ¨ die erste Gleichung in (4.29) erf¨ ullen. Man verifiziert dann leicht (vgl. Ubungsaufgabe 4.23), daß die verbleibenden Gleichungen erf¨ ullt sind. Wir hatten oben erw¨ ahnt, daß endliche Filter Wavelets und Skalierungsfunktionen entsprechen, die einen kompakten Tr¨ager haben. Diese Aussage beruht auf dem Satz von Paley-Wiener. Betrachtet man diese Aussage als Tatsache und setzt man voraus, daß die Tiefpaß-Filter die L¨angen M und * haben, dann l¨ M aßt sich unmittelbar zeigen, daß ϕ und ϕ außerhalb von * − 1 gleich Null sind (Ubungsaufgabe ¨ Intervallen der L¨ angen M − 1 und M 4.24). Außerdem haben sowohl ψ als auch ψ Tr¨ager auf Intervallen der L¨ange * − 2)/2. (M + M
Die diskrete biorthogonale Wavelet-Transformation
Die Berechnung der Wavelet-Koeffizienten in einem biorthogonalen System weicht nicht sehr vom orthogonalen Fall ab: Der einzige Unterschied besteht darin, daß wir eine biorthogonale Filterbank verwenden. Die Ableitung ist ¨ im Wesentlichen dieselbe und wird deswegen dem Leser als Ubungsaufgabe u ¨ berlassen. Im biorthogonalen Fall beginnen wir mit der folgenden Approximation in der Skala 2−J : f, ϕ J,k ϕJ,k (t). fJ (t) = k
Man beachte, daß wir die inneren Produkte mit den dualen Skalierungsfunktionen ϕ J,k verwenden. Hierbei handelt es sich um eine bez¨ uglich VJ⊥ nichtorthogonale Projektion auf VJ . Eine Approximation fj+1 kann in zwei Teile zerlegt werden, n¨amlich in eine gr¨ obere Approximation fj ∈ Vj und in Details dj ∈ Wj : fj+1 (t) = fj (t) + dj (t) = sj,k ϕj,k (t) + wj,k ψj,k (t). k
k
4.6 Biorthogonale Systeme
77
Die Skalierungskoeffizienten sj,k = f, ϕ j,k und die Wavelet-Koeffizienten wj,k = f, ψj,k werden dadurch berechnet, daß man die Skalierungskoeffizienten sj+1,k = f, ϕ j+1,k in die biorthogonale Filterbank einspeist: √ √ (4.32) sj,l = 2 gl−2k sj+1,k . hl−2k sj+1,k und wj,l = 2 l
l
Wiederholt man dieses Verfahren rekursiv, indem man mit sJ beginnt und bis zu einem gewissen gr¨ obsten Level j0 weiter macht, dann ergibt sich (4.33)
fJ (t) =
J−1
j=j0
k
f, ψj,k ψj,k (t) +
k
f, ϕ j0 ,k ϕj0 ,k (t).
F¨ ur j0 → −∞ und J → ∞ erhalten wir f (t) = f, ψj,k ψj,k (t). j,k
Zur Rekonstruktion der Feinskalen-Koeffizienten sJ speisen wir rekursiv die Skalierungskoeffizienten sj und die Wavelet-Koeffizienten wj in den Synthese-Teil der biorthogonalen Filterbank ein: √ (hk−2l sj,l + gk−2l wj,l ). sj+1,k = 2 l
¨ Ubungsaufgaben zu Abschnitt 4.6 ¨ Ubungsaufgabe 4.20. Leiten Sie eine der Gleichungen in (4.28) ab und verwenden Sie dabei die gleiche Art von Rechnungen wie im orthogonalen Fall. Beginnen Sie damit, die entsprechende Identit¨at f¨ ur die Filterkoeffizienten abzuleiten. ¨ Ubungsaufgabe 4.21. Zeigen Sie, daß (4.29) die perfekten Rekonstruktionsbedingungen f¨ ur Filterb¨ anke sind. ¨ Ubungsaufgabe 4.22. Beweisen Sie (4.30). ¨ Ubungsaufgabe 4.23. Zeigen Sie, daß die Alternating-Flip-Konstruktion unter der Voraussetzung zu einer biorthogonalen Filterbank f¨ uhrt, daß die erste Gleichung in (4.29) erf¨ ullt ist. ¨ Ubungsaufgabe 4.24. Die Tiefpaß-Filter seien FIR-Filter mit den Filterl¨an*. Es sei vorausgesetzt, daß ϕ und ϕ gen M und M außerhalb von [0, A] und [0, A] gleich Null sind. Mit Hilfe der Skalierungsgleichungen zeige man, daß =M * − 1. Danach verwende man die Wavelet-Gleichungen, A = M − 1 und A * − 2)/2] um zu zeigen, daß sowohl ψ als auch ψ außerhalb von [0, (M + M gleich 0 (Null) sind. ¨ Ubungsaufgabe 4.25. Leiten Sie die Filtergleichungen (4.32) ab.
78
4 Multi-Skalen-Analyse
4.7 Approximation und verschwindende Momente In diesem Abschnitt konzentrieren wir uns auf die Approximationseigenschaften von Skalierungsfunktionen und Wavelets. In enger Beziehung hierzu steht die Eigenschaft von Wavelets, verschwindende Momente zu haben; diese Eigenschaft verleiht den Wavelets die F¨ ahigkeit, Signale zu komprimieren. Approximationseigenschaften von Skalierungsfunktionen Die Skalierungsfunktionen werden dazu verwendet, allgemeine Funktionen zu approximieren. Deswegen m¨ ussen sie gewisse Approximationseigenschaften besitzen. Es stellt sich heraus (vgl. auch Kapitel 12), daß die Skalierungsfunktion ϕ die Approximationseigenschaft f − Pj f ≤ C 2−jα Dα f f¨ ur α ≤ N − 1 hat, falls Polynome bis zum Grad N − 1 reproduziert werden: (4.34) k α ϕ(t − k) = tα f¨ ur α = 0, . . . , N − 1. k
6
ur jedes j und α = 0, . . . , N − 1. Die ganze Zahl Das bedeutet , daß tα ∈ Vj f¨ N ist der Grad der Multi-Skalen-Analyse. Verschwindende Momente Die polynomreproduzierende Eigenschaft (4.34) ist vielleicht an sich nicht so interessant; sie wird jedoch deswegen interessant, weil sie mit denjenigen dualen Wavelets zusammenh¨ angt, die verschwindende Momente haben. *j , weil Vj ⊥ W *j . Das bedeutet, daß Ist tα ∈ Vj , dann haben wir tα ⊥ W α t , ψj,k = 0 f¨ ur jedes Wavelet ψj,k gilt. Expliziter ausgedr¨ uckt, haben wir ur α = 0, . . . , N − 1. tα ψj,k (t) dt = 0, f¨ Man sagt in diesem Fall, daß die dualen Wavelets N verschwindende Momente haben. Das Vorhandensein von N verschwindenden Momenten l¨aßt sich ¨aquivalent so formulieren, daß die Fourier-Transformation bei ω = 0 eine Nullstelle der Ordnung N hat: = 0, Dα ψ(0)
f¨ ur α = 0, . . . , N − 1.
ϕ(ω) Unter Verwendung von Relation ψ(2ω) = G(ω) und ϕ(0) = 1 sehen wir, daß G(ω) bei ω = 0 eine Nullstelle der Ordnung N hat. Aus (4.30) folgt dann, daß H(ω) die Form 6
Hierbei mißbrauchen wir die Notation ein wenig, denn tα liegt nicht in L2 (R).
4.7 Approximation und verschwindende Momente
(4.35)
H(ω) =
e−iω + 1 2
N
79
Q(ω)
mit einer 2π-periodischen Funktion Q(ω) haben muß. Je gr¨oßer wir N w¨ahlen, ¨ desto sch¨ arfer wird den Ubergang zwischen Paß-Band und Stop-Band. Auf dieselbe Weise k¨ onnen wir zeigen, daß die Filterfunktion H(ω) von der Form (4.36)
H(ω) =
e−iω + 1 2
Ne
Q(ω)
die Anzahl der verschwindenden Momente von ψ oder sein muß, wobei N die Ordnung der dualen Multi-Skalen-Analyse bezeichnet. Die Faktorisierungen (4.35) und (4.36) sind ein Ausgangspunkt bei der Konstruktion von Fil terb¨ anken. Die Funktionen Q(ω) und Q(ω) m¨ ussen dann so gew¨ahlt werden, daß die Biorthogonalit¨ atsbedingungen erf¨ ullt sind. Auch andere Eigenschaften von Wavelets h¨ angen von dieser Wahl ab. Wir f¨ uhren diese Diskussion in Kapitel 8 weiter. Es sind die verschwindenden Momente, die den Wavelets die Kompressionsf¨ ahigkeit verleihen. Wir geben hier eine kurze Erl¨auterung daf¨ ur. Es sei ψj,k ein (Feinskalen-) Wavelet mit N verschwindenden Momenten. Wir k¨onnen diesen Sachverhalt dann mit der Vorstellung assoziieren, daß ψj,k außerhalb eines kleinen zu 2−j proportionalen Intervalls gleich Null ist. Wir nehmen an, daß das Signal α stetige Ableitungen auf diesem Intervall hat. Dann kann es dort durch ein Taylorpolynom Pα−1 (t) des Grades (α − 1) mit einem Fehler der Ordnung O(2−jα ) approximiert werden, und wir erhalten f, ψj,k = f (t)ψj,k (t) dt = Pα−1 (t)ψj,k (t) dt + O(2−jα ) = O(2−jα )
unter der Voraussetzung, daß α ≤ N . An den Stellen also, an denen das Signal glatt ist, sind die Feinskalen-Waveletkoeffizienten fast 0 und m¨ ussen nicht gespeichert werden. Wir m¨ ussen nur diejenigen Feinskalenkoeffizienten speichern, bei denen das Signal abrupte Ver¨ anderungen, Unstetigkeiten usw. aufweist. Verschwindende Momente der dualen Wavelets ψ h¨angen auch mit der Regularit¨ at des Mother-Wavelets ψ zusammen. Man kann zeigen, daß das duale Wavelet mindestens so viele verschwindenden Momente haben muß, wie das Mother-Wavelet Ableitungen hat. Eine gr¨ oßere Anzahl von verschwindenden Momenten f¨ uhrt zu glatteren Mother-Wavelets. Die Regularit¨at von ψ h¨angt auch von der Wahl von Q ab. Die Anzahl der dualen verschwindenden Momen des Wavelets ψ ist nicht so wichtig wie N , da wir keine Skalarprodukte te N
80
4 Multi-Skalen-Analyse
die Regularit¨at der mit den Wavelets ψj,k betrachten. Außerdem beeinflußt N dualen Wavelets, und das ist nicht so wichtig wie die Regularit¨at der Wavelets ψj,k , die als Basisfunktionen in der Wavelet-Zerlegung verwendet werden. . Deswegen wird N u oßer gew¨ ahlt als N ¨ blicherweise gr¨ ¨ Ubungsaufgaben zu Abschnitt 4.7
¨ Ubungsaufgabe 4.26. Es sei vorausgesetzt, daß die Funktion H(ω) bei ω = π eine Nullstelle der Ordnung N hat. Zeigen Sie mit Hilfe des Skalierens, daß Dα ϕ(2kπ) = 0 f¨ ur alle ganzen Zahlen k = 0 und 0 ≤ α ≤ N − 1 gilt. Ferner zeige man, daß Dα ψ(4kπ) = 0 f¨ ur alle ganzen Zahlen k und 0 ≤ α ≤ N − 1 gilt.
¨ Ubungsaufgabe 4.27. Zeigen Sie mit Hilfe der Poissonschen Summations¨ formel und der vorhergehenden Ubung, daß f¨ ur 0 ≤ α ≤ N − 1 die Beziehung k α ϕ(t − k) = tα k
gilt, wenn die Funktion H(ω) bei ω = π eine Nullstelle der Ordnung N hat und wenn die Funktion DH(ω) bei ω = 0 eine Nullstelle der Ordnung N − 1 hat. Die Skalierungsfunktion ϕ reproduziert demnach Polynome eines Grades, der h¨ ochstens N − 1 betr¨ agt. ¨ Ubungsaufgabe 4.28. Beweisen Sie durch Skalieren und mit Hilfe der Poissonschen Summationsformel die beiden Identit¨aten (−1)k ψ(t − k) = ψ(t/2 − l + 1/4), k
k
l
k
(−1) ϕ(t − k) =
l
(−1)l ψ(t − l − 1/2).
4.8 Bemerkungen Die Idee, ein Bild in verschiedenen Skalen zu approximieren und die Differenz zwischen diesen Approximationen zu speichern, trat bereits im Pyramidenalgorithmus von Burt und Adelson im Jahre 1983 auf. Gleichzeitig machte auch die Theorie der Wavelets Fortschritte und es wurden verschiedene WaveletBasen konstruiert, u.a. von dem franz¨ osischen Mathematiker Yves Meyer. Das brachte den franz¨ osischen Ingenieur Stephane Mallat darauf, einen Zusammenhang zwischen Wavelets und Filterb¨ anken zu erkennen. Zusammen mit Meyer formulierte er die Definition der Multi-Skalen-Analyse. Dieser Zusammenhang f¨ uhrte zu einem Durchbruch in der Wavelet-Theorie: man konnte neue Konstruktionen von Wavelet-Basen und schnellen Algorithmen angeben.
4.8 Bemerkungen
81
Die belgische Mathematikerin Ingrid Daubechies konstruierte 1988 in diesem Rahmen die erste Familie von Wavelets; seitdem wurden viele verschiedene Wavelets konstruiert. ¨ Der Ubersichtsartikel von Jawerth und Sweldens [20] ist ein guter Start f¨ ur das weitere Studium und Verstehen der MSA und der Wavelets. Der Artikel hat auch ein umfassendes Literaturverzeichnis. Die B¨ ucher Ten Lectures on Wavelets von Ingrid Daubechies [11] und A First Course on Wavelets von Hernandez & Weiss [16] geben eine mathematisch vollst¨andigere Beschreibung. Unter anderem enthalten diese B¨ ucher Bedingungen f¨ ur Tiefpaß- und Hochpaß-Filter zur Erzeugung von Riesz-Basen f¨ ur Wavelets. Eine ausf¨ uhrliche Diskussion dieses Sachverhalts findet man auch in dem Buch von Strang & Nguyen [27].
5 Wavelets in h¨ oheren Dimensionen
Grauskalenbilder lassen sich als Funktionen zweier Variabler darstellen. F¨ ur jeden Punkt (x, y) des Bildes ist f (x, y) der Grauskalenwert an diesem Punkt. Um Wavelets f¨ ur die Bildverarbeitung zu verwenden, m¨ ussen wir deswegen die Wavelet-Transformation auf Funktionen mehrerer Variabler verallgemeinern. Es gibt zwei grundlegende M¨ oglichkeiten, das zu tun: separable oder nichtseparable Wavelet-Transformationen. Separable Transformationen werden automatisch aus eindimensionalen Transformationen konstruiert und sind im Allgemeinen leichter handhabbar. Wir konzentrieren uns hier haupts¨achlich auf separable Transformationen. Jedoch h¨ angen die separablen Basen mit Symmetrien bei Rotationen um oßere Rotationssymmetrie gew¨ unscht, dann nur 90o zusammen. Wird eine gr¨ werden die (nicht-separablen) Konstruktionen komplizierter.
5.1 Die separable Wavelet-Transformation Separable Wavelets werden direkt aus eindimensionalen Wavelets konstruiert. Wir betrachten nur zwei Dimensionen, aber es sollte offensichtlich sein, wie man die Konstruktion auf h¨ ohere Dimensionen verallgemeinert. Wir beginnen mit dem einfachsten Fall. Das zweidimensionale Haar-System Wir betrachten eine Funktion f1 (x, y), die st¨ uckweise konstant auf den Quadraten kx /2 < x < (kx +1)/2, ky /2 < y < (ky +1)/2 ist und die Werte s1,k hat. Wir verwenden hier die Multi-Index-Notation k = (kx , ky ) ∈ Z2 ; kx , ky ∈ Z. Wir k¨ onnen uns s1,k als die Pixelwerte in einem digitalen Grauskalenbild vorstellen. Wir versuchen, den Informationsbetrag dadurch zu reduzieren, daß wir vier benachbarte Werte durch ihren Mittelwert
84
5 Wavelets in h¨ oheren Dimensionen
y 2
6
2
6
s1,(0,3) s1,(1,3) s1,(2,3) s1,(3,3) s0,(0,1)
s0,(1,1)
s0,(0,0)
s0,(1,0)
s1,(0,2) s1,(1,2) s1,(2,2) s1,(3,2) 1
1 s1,(0,1) s1,(1,1) s1,(2,1) s1,(3,1) s1,(0,0) s1,(1,0) s1,(2,0) s1,(3,0) 1
2
- x
1
2
Abb. 5.1. Mittelwerte in der zweidimensionalen Haar-Transformation
(5.1)
s0,k =
1 (s1,2k + s1,2k+ex + s1,2k+ey + s1,2k+e ), 4
approximieren, wobei ex = (1, 0), ey = (0, 1) und e = (1, 1). Das l¨ auft darauf hinaus, f1 durch eine Funktion f0 zu approximieren, die st¨ uckweise konstant auf den Quadraten kx < x < kx + 1, ky < y < ky + 1 (Abb. 5.1) ist. Offensichtlich verlieren wir bei dieser Approximation Information und die Frage ist, wie diese Information dargestellt werden kann. Bei der eindimensionalen Haar-Transformation ersetzen wir zwei benachbarte Skalierungskoeffizienten durch ihren Mittelwert und speichern anschließend die verlorengegangene Information als die Differenz. Im vorliegenden Fall ersetzen wir vier Werte durch ihren Mittelwert und deswegen brauchen wir drei Dif” ferenzen“. Im Haar-System berechnen wir 1 (s1,2k + s1,2k+ex − s1,2k+ey − s1,2k+e ), 4 1 = (s1,2k − s1,2k+ex + s1,2k+ey − s1,2k+e ), 4 1 = (s1,2k − s1,2k+ex − s1,2k+ey + s1,2k+e ). 4
H = w0,k V w0,k D w0,k
In Abb. 5.2 haben wir die Polarit¨ at“ dieser Differenzen und die Mittelwert” bildung angedeutet. Die oberen Indizes H,V ,D sind Kurzbezeichnungen f¨ ur horizontal, vertikal bzw. diagonal. Die Koeffizienten w0H k¨onnen als Differenzen in der y-Richtung betrachtet werden und sie helfen uns, horizontale Kanten zu entdecken“: deswegen der obere Index H. Analog lassen sich die ”
5.1 Die separable Wavelet-Transformation
85
Koeffizienten w0V als Differenzen in der x-Richtung auffassen und die vertikalen Kanten offenbaren“ sich in w0V . Die diagonalen Kanten sind in w0D ” vorhanden. Abseits von den Kanten k¨ onnen diese Differenzen im Allgemeinen vernachl¨ assigt werden. Auf diese Weise wird eine Kompression m¨oglich. s1 s1,2k+ey s1,2k+e
s1,2k
s1,2k+ex
w0H
s0
w0V
w0D
+
+
−
−
+
−
−
+
+
+
+
+
+
−
+
−
Abb. 5.2. Mittelwerte und Differenzen in der 2-dimensionalen Haar-Transformation
Die Mittelwertbildung in Gleichung (5.1) ist der Tiefpaß-Filterungsschritt in der zweidimensionalen Haar-Transformation. Dieser Schritt l¨aßt sich in zwei eindimensionale Tiefpaß-Filterungsschritte zerlegen. Zuerst wenden wir eine Tiefpaß-Filterung mit einem Subsampling in der x-Richtung an und erhalten 1 1 (s1,2k + s1,2k+ex ) und (s1,2k+ey + s1,2k+e ). 2 2 Mittelt man diese beiden, das heißt, bildet man den Mittelwert in der yRichtung, dann ergibt sich s0,k . Außerdem sind die drei Wavelet-KoeffizientenFolgen das Ergebnis der Anwendung von Tiefpaß- und Hochpaß-Filtern in der x-Richtung und in der y-Richtung. Der ganze Prozeß ist in Abb. 5.3 dargestellt, wobei H und G die Haar-Filter bezeichnen. Die Indizes x und y geben an, daß Filterung und Subsampling in der x-Richtung und in der y-Richtung erfolgen.
Allgemeine separable Wavelet-Transformationen Die Zerlegung der zweidimensionalen Haar-Transformation in zwei eindimensionale Filterungsschritte liefert ein allgemeines Verfahren zur Konstruktion
86
5 Wavelets in h¨ oheren Dimensionen
- Hx∗
- ↓x2
- H∗ y
- ↓y2 s0
- G∗y
- ↓y2 wH 0
- H∗ y
- ↓y2 wV 0
- G∗ y
- ↓y2 wD 0
s1
- G∗ x
- ↓x2
Abb. 5.3. Die zweidimensionale Haar-Transformation als zwei eindimensionale Haar-Transformationen
einer zweidimensionalen Wavelet-Transformation aus einer eindimensionalen. und G. Wir beginnen mit einer Menge von biorthogonalen Filtern H, G, H Danach definieren wir zweidimensionale Tiefpaß- und Hochpaß-Synthesefilter durch H = H x Hy , GH = Gx Hy , GV = Hx Gy , GD = Gx Gy . G H, G V und G D werden analog definiert. Zur VereinDie Analysefilter H, fachung der Schreibweise vereinbaren wir von jetzt an, daß die Operatoren Hx , Hy usw. auch das Upsampling einschließen. Zum Beispiel ist Hx ein Upsampling in der x-Richtung mit anschließender Filterung in der x-Richtung. Zu gegebenen Skalierungskoeffizienten sj+1 = (sj+1,k )k∈Z2 berechnen wir die Mittelwerte und Waveletkoeffizienten
(5.2)
sj wjH wjV wjD
∗ sj+1 =H = G∗H sj+1 ∗ sj+1 =G V ∗ sj+1 =G D
x∗ sj+1 , y∗ H =H ∗ ∗ = Gy Hx sj+1 , ∗x sj+1 , y∗ G =H ∗x sj+1 . ∗y G =G
x∗ wird Hier schließen die transponierten Operatoren das Downsampling ein; H ∗ und anschliezu einer Filterung in der x-Richtung mit dem reversen Filter H ßendem Downsampling. Wir berechnen also die Skalierungs- und WaveletKoeffizienten, indem wir zuerst die Analyse-Filterbank auf die Zeilen von sj+1 x∗ sj+1 und G ∗x sj+1 erhalten. Danach wenden wir die anwenden und dadurch H Analyse-Filterbank auf die entsprechenden Spalten an (vgl. Abb. 5.4). Zur Rekonstruktion von sj+1 aus den Skalierungs- und Wavelet-Koeffizienten in der gr¨ oberen Skala invertieren wir den gesamten Prozeß von Abb. 5.4. ∗ sj+1 Wir wenden also zuerst die Synthesefilter in der y-Richtung an, um H x ∗ sj+1 zu rekonstruieren: und G x
5.1 Die separable Wavelet-Transformation
87
e ∗y H e ∗y G e x∗ sj+1 G e ∗x sj+1 G sj+1
-
e x∗ sj+1 H
e∗x sj+1 G
e y∗ H e y∗G e x∗ sj+1 H e ∗x sj+1 H
Abb. 5.4. Separable Filter
x∗ sj+1 = Hy sj + Gy wjH , H
∗x sj+1 = Hy wjV + Gy wjD . G
Danach wenden wir die Synthese-Filterbank in der x-Richtung an und erhalten x sj+1 + Gx G x sj+1 sj+1 = Hx H = Hx Hy sj + Hx Gy wjH + Gx Hy wjV + Gx Gy wjD . = Hsj + GH wjH + GV wjV + GD wjD . Bei der Forward-Wavelet-Transformation zerlegen wir die Skalierungskoeffizienten sj rekursiv, wobei wir mit den Koeffizienten sJ in einer feinsten Skala beginnen. In Abb. 5.5 sind zwei Schritte der Transformation zusammen mit der typischen Anordnung der Waveletkoeffizienten dargestellt. Die inverse Transformation kehrt den ganzen Prozeß um, wobei die Synthese-Filter verwendet werden.
wJH−1 sJ
wJD−1
-
wJH−1
wJD−1
sJ −1
wJV−1
wJH−2 wJD−2 sJ −2 wJV−2
wJV−1
Abb. 5.5. Die separable Wavelet-Transformation
Wir machen hier eine kurze Bemerkung u ¨ ber den Filterungsprozeß. Beispielsweise l¨ aßt sich die Berechnung von sj aus sj+1 in (5.2) folgendermaßen expliziter schreiben: sj,k = 2 hly −2ky sj+1,l . hlx −2kx l∈Z2
88
5 Wavelets in h¨ oheren Dimensionen
k = hky Das ist eine Filterung mit dem zweidimensionalen Tiefpaß-Filter h hkx und einem anschließenden zweidimensionalen Downsampling“. Dieser Down” sampling-Operator eliminiert auf folgende Weise alle Koeffizienten mit un” geraden“ Mehrfach-Indizes. ⎛ ⎞ .. .. .. . . . ⎜ ⎟ ⎜· · · s−2,2 s0,2 s2,2 · · ·⎟ ⎜ ⎟ ⎟ (↓ 2)2 s = ⎜ ⎜· · · s−2,0 s0,0 s2,0 · · ·⎟ . ⎜· · · s−2,−2 s0,−2 s2,−2 · · ·⎟ ⎝ ⎠ .. .. .. . . .
Die Wavelet-Koeffizienten werden ¨ ahnlich berechnet, indem man die HochpaßkD = kV = kH = gky verwendet. Außerdem gkx hky und g gkx gky , g Filter g hkx l¨ aßt sich die Rekonstruktion von sj+1 als Anwendung zweidimensionaler Filter nach einem zweidimensionalen Upsampling auffassen. Dieser UpsamplingOperator f¨ ugt Nullen auf folgende Weise ein: ⎞ ⎛ .. .. .. .. .. . . . . . ⎟ ⎜ ⎜· · · s−1,1 0 s0,1 0 s1,1 · · ·⎟ ⎟ ⎜ ⎜· · · 0 0 0 0 0 · · ·⎟ ⎟ ⎜ ⎟ (↑ 2)2 s = ⎜ ⎜· · · s−1,0 0 s0,0 0 s1,0 · · ·⎟ . ⎜· · · ⎟ 0 0 0 0 0 · · · ⎜ ⎟ ⎜· · · s−1,−1 0 s0,−1 0 s1,−1 · · ·⎟ ⎠ ⎝ .. .. .. .. .. . . . . . Separable Filter im Frequenzbereich Wir haben die Filter H und Gν als Tiefpaß- and Hochpaß-Filter bezeichnet, ohne etwas anderes als ihre Mittelung“ und Differenzbildung“ zu erkl¨aren. ” ” Man sieht jedoch unmittelbar, daß ihre Filterfunktionen folgendermaßen gegeben sind (ohne Upsampling):
(5.3)
H(ξ, η) = GH (ξ, η) = GV (ξ, η) = GD (ξ, η) =
H(ξ)H(η), G(ξ)H(η), H(ξ)G(η), G(ξ)G(η).
Idealerweise ist H(ω) gleich 1 auf [0, π/2] und gleich 0 auf [π/2, π], und G(ω) ist gleich 1 auf [π/2, π] und gleich 0 auf [0, π/2]. In diesem Fall zerlegen H(ξ, η) und Gν (ξ, η) den Frequenzbereich so, wie in Abb. 5.6 dargestellt. Bei nicht¨ idealen Filtern kommt es nat¨ urlich zu einem Uberlappen der Frequenzbereiche.
5.2 Zweidimensionale Wavelets
89
η π6 GH
GD
H
GV
π 2
π 2
- ξ
π
Abb. 5.6. Frequenztr¨ ager f¨ ur ideale separable Filter
¨ Ubungsaufgaben zu Abschnitt 5.1 ¨ Ubungsaufgabe 5.1. Zeigen Sie, daß die Wavelet-Koeffizienten in der zweidimensionalen Haar-Transformation durch die beiden in Abb. 5.3 beschriebenen eindimensionalen Filterungsschritte gegeben sind. ¨ Ubungsaufgabe 5.2. F¨ uhren Sie die Konstruktion separabler Filter in drei Dimensionen durch. Wieviele Hochpaß-Filters gibt es? (7) ¨ Ubungsaufgabe 5.3. Zeigen Sie, daß sich der zweidimensionale Downsampling-Operator als (↓ 2)2 = (↓ 2)x (↓ 2)y schreiben l¨aßt, wobei (↓ 2)x und (↓ 2)y die eindimensionalen Downsampling-Operatoren in der x-Richtung und in der y-Richtung sind. Man zeige auch, daß (↑ 2)2 = (↑ 2)x (↑ 2)y .
5.2 Zweidimensionale Wavelets In einer Dimension hatten wir mit den Approximations- und Detail-R¨aumen, der Skalierungsfunktion und dem Wavelet begonnen. Hiervon hatten wir Filter und die schnelle Wavelet-Transformation abgeleitet. Im separablen Fall sind die separablen Filter und die assoziierte Wavelet-Transformation der nat¨ urliche Ausgangspunkt. Wir beschreiben jetzt die zu diesen Filtern geh¨orenden Skalierungsfunktionen und Wavelets sowie die entsprechende Multi-SkalenAnalyse. Unsere Ausf¨ uhrungen sind lediglich eine Skizze und diejenigen Leser, ¨ die weitere Einzelheiten erfahren m¨ ochten, werden auf die Ubungen verwiesen. Die zweidimensionale Haar-Skalierungsfunktion und Wavelets Die zweidimensionale Haar-Skalierungsfunktion ist definiert durch 1 falls 0 < x, y < 1, Φ(x, y) = 0 andernfalls.
90
5 Wavelets in h¨ oheren Dimensionen
Mit dieser Funktion k¨ onnen wir die st¨ uckweise konstante Funktion f1 des vorhergehenden Abschnitts als f1 (x, y) = s1,k Φ(2x − kx , 2y − ky ) k∈Z2
schreiben. Das ist so, weil Φ(2x − kx , 2y − ky ) gleich 1 ist f¨ ur kx /2 < x < (kx + 1)/2, ky /2 < y < (ky + 1)/2 und andernfalls gleich 0 ist. Die gr¨obere aßt sich ¨ ahnlicherweise als Approximation f0 l¨ s0,k Φ(x − kx , y − ky ) f0 (x, y) = k
schreiben. Im eindimensionalen Haar-System kann die Differenz d0 = f1 − f0 als eine Linearkombination von Wavelets geschrieben werden, die st¨ uckweise konstant mit den Werten ±1 sind. Das ist auch der Fall in zwei Dimensionen und es ist nicht u ¨berraschend, daß wir drei verschiedene Wavelets Ψ H , Ψ V D und Ψ brauchen. Diese sind definiert durch ±1 falls 0 < x, y < 1, ν Ψ (x, y) = 0 andernfalls, wobei ν gleich H, V oder D ist. Entsprechend der Polarit¨at“ in Abb. 5.2 neh” men sie die Werte 1 und −1 an. Mit diesen Wavelets l¨aßt sich das Detailbild“ ” d0 folgendermaßen schreiben: ν w0,k Ψ ν (x − kx , y − ky ). d (x, y) = 0 (5.4) k ν∈{H,V,D}
Separable Skalierungsfunktionen und Wavelets Ebenso wie bei Filtern lassen sich die Haar-Skalierungsfunktion und (Haar-) Wavelets durch ihre entsprechende eindimensionale Skalierungsfunktion und die entsprechenden Wavelets ausdr¨ ucken. Es ist leicht zu sehen, daß Φ(x, y) Ψ H (x, y) Ψ V (x, y) Ψ D (x, y)
= ϕ(x)ϕ(y), = ϕ(x)ψ(y), = ψ(x)ϕ(y), = ψ(x)ψ(y).
Auf diese Weise werden Wavelets und Skalierungsfunktionen auch f¨ ur allgemeine separable Wavelet-Basen definiert. Wir definieren dilatierte, translatierte und normalisierte Skalierungsfunktionen durch Φj,k (x, y) = 2j Φ(2j x − kx , 2j y − ky ) wobei j ∈ Z, k ∈ Z2 , und verfahren in a ¨hnlicher Weise mit den Wavelets. Man beachte, daß wir 2j als Normalisierungsfaktor in zwei Dimensionen ben¨otigen. Wir definieren die Approximationsr¨ aume Vj als die Menge aller Funktionen der Form
5.2 Zweidimensionale Wavelets
fj (x, y) =
91
sj,k Φj,k (x, y).
k
Die Detail-R¨ aume WjH , WjV und WjD werden analog definiert. Die Skalierungsfunktion erf¨ ullt die Skalierungsgleichung Φ(x) = 4 hk Φ(2x − kx , 2y − ky ). k
Wir haben auch ¨ ahnliche Gleichungen f¨ ur die Wavelets: Ψ ν (x) = 4 gkν Φ(2x − kx , 2y − ky ). k
Dies impliziert, daß Vj ⊂ Vj+1 und Wjν ⊂ Vj+1 . Jedes fj+1 ∈ Vj+1 l¨aßt sich in der Form D V fj+1 = fj + dH j + dj + dj
(5.5)
zerlegen, wobei fj ∈ Vj und dνj ∈ Wjν . Die Funktion fj+1 l¨aßt sich als sj+1,k Φj+1,k (x, y), (5.6) fj+1 (x, y) = k
schreiben und wir haben sj,k Φj,k (x, y) (5.7) fj (x, y) =
und dνj (x, y) =
k
ν ν wj,k Ψj,k (x, y).
k
Um zwischen (5.6) und (5.7) hin und her zu wechseln, verwenden wir die Analyse-Filterbank (5.2) und die Synthese-Filterbank (5.3). Und schließlich haben wir auch die dualen Skalierungsfunktionen, Wavelets, Approximations- und Detailr¨ aume mit den gleichen oben beschriebenen Eigenschaften. Zusammen mit den urspr¨ unglichen Skalierungsfunktionen und Wavelets erf¨ ullen sie die Biorthogonalit¨ atsbedingungen ¨ahnlich wie im eindimensionalen Fall. Die Biorthogonalit¨ atsbedingungen k¨onnen in den Filterbereich u ¨ bertragen werden. Definieren wir ⎡ ⎤ H(ξ, η) H(ξ + π, η) H(ξ, η + π) H(ξ + π, η + π) ⎢ GH (ξ, η) GH (ξ + π, η) GH (ξ, η + π) GH (ξ + π, η + π) ⎥ ⎥ M(ξ, η) = ⎢ ⎣ GV (ξ, η) GV (ξ + π, η) GV (ξ, η + π) GV (ξ + π, η + π) ⎦ GD (ξ, η) GD (ξ + π, η) GD (ξ, η + π) GD (ξ + π, η + π)
* η), dann erhalten wir und in ¨ ahnlicher Weise M(ξ,
(5.8)
t
* η) = I. M(ξ, η)M(ξ,
Man pr¨ uft leicht nach, daß die separablen Filter diese Gleichungen erf¨ ullen. Jedoch ist es auch m¨ oglich, diese Gleichungen als Ausgangspunkt f¨ ur die Konstruktion zweidimensionaler nichtseparabler Wavelets zu verwenden. Wir gehen nicht weiter auf diese Thematik ein, sondern sehen uns stattdessen im n¨ achsten Abschnitt zwei andere vollkommen verschiedene Konstruktionen von nichtseparablen Wavelets an.
92
5 Wavelets in h¨ oheren Dimensionen
Separable Wavelets im Frequenzbereich Die Fourier-Transformationen der Skalierungsfunktion und der Wavelets sind durch η) = ϕ(ξ) Φ(ξ, ϕ(η), " H Ψ (ξ, η) = ϕ(ξ) ψ(η), ϕ(η), Ψ1V (ξ, η) = ψ(ξ) " ψ(η) Ψ D (ξ, η) = ψ(ξ)
gegeben. Wir wissen, daß ϕ im Wesentlichen auf das Frequenzband [0, π] lo η) im Wesentlichen auf das Quadarat 0ξ, η < π kalisiert ist, und somit ist Φ(ξ, in der Frequenzebene lokalisiert. Ein ¨ ahnliches Argument f¨ ur die Wavelets ergibt, daß die separable Wavelet-Transformation der in Abb. 5.7 dargestellten Zerlegung der Frequenzebene entspricht. η π6 H W−1 π 2
D W−1
H D W−2 W−2 V V−2 W−2 π 2
V W−1
- ξ
π
Abb. 5.7. Zerlegung der Frequenzebene f¨ ur die separable Wavelet-Transformation
¨ Ubungsaufgaben zu Abschnitt 5.2 ¨ Ubungsaufgabe 5.4. Beweisen Sie Gleichung (5.4). ¨ Ubungsaufgabe 5.5. Zeigen Sie Φj,k (x, y) = ϕj,kx (x)ϕj,ky (y). ¨ Ubungsaufgabe 5.6. Zeigen Sie, daß die Skalierungsfunktion die Skalierungsgleichung Φ(x) = 4 hk Φ(2x − kx , 2y − ky ) erf¨ ullt, wobei hk = hkx hky . k
Hinweis: Man verwende die eindimensionale Skalierungsfunktion. ¨ Ubungsaufgabe 5.7. Zeigen Sie, daß Vj ⊂ Vj+1 . Hinweis: Man verwende die Skalierungsgleichung, um zu zeigen, daß die Skalierungsfunktionen Φj,k in Vj+1 liegen. Hiervon ausgehend leite man ab, das jede endliche Summe
5.3 Nichtseparable Wavelets K
93
sj+1,k Φj+1,k (x, y)
k=−K
in Vj+1 liegt. Beweisen Sie abschließend folgende Aussage: Die Abgeschlossenheit von Vj+1 impliziert, daß alle entsprechenden unendlichen Summen, das heißt, die Elemente von Vj , in Vj+1 liegen. ¨ Ubungsaufgabe 5.8. Beweisen Sie, daß sich fj+1 wie in (5.5) zerlegen l¨aßt. Hinweis: Man zeige, daß sich jede Skalierungsfunktion Φj+1,k auf diese Weise zerlegen l¨ aßt. ¨ Ubungsaufgabe 5.9. Zeigen Sie, daß separable Filter die Biorthogonalit¨atsbedingungen (5.8) erf¨ ullen.
5.3 Nichtseparable Wavelets Ein Nachteil der separablen Wavelets ist ihre geringe Rotationsinvarianz. Eine ¨ starke Betonung liegt auf den Koordinatenachsen. Anderungen bei den Koordinatenrichtungen werden in die Frequenzkan¨ale WjH und WjV separiert ¨ (aufgeteilt), aber Anderungen in den beiden Diagonalrichtungen sind in den D Kan¨ alen Wj gemischt. Eine 45o -Rotation eines Bildes kann somit zu dra¨ matischen Anderungen der Wavelet-Koeffizienten f¨ uhren. Wir geben nun zwei Beispiele f¨ ur isotropischer ausgerichtete Wavelets in zwei Dimensionen. Aus praktischen Gr¨ unden verwenden wir hier die Schreibweise f (x), x ∈ R2 . Quincunx-Wavelets F¨ ur separable Wavelets lassen sich die dilatierten, translatierten und normalisierten Skalierungsfunktionen in folgender Form schreiben: Φj,k (x) = 2j Φ(Dj x − k);
j ∈ Z, k ∈ Z2 .
Hier bezeichnet D die Dilatationsmatrix
20 D= . 02 F¨ ur Quincunx-Wavelets haben wir stattdessen die Skalierungsfunktionen ϕj,k (x) = 2j/2 ϕ(Dj x − k) mit der Dilatationsmatrix D=
1 −1 1 1
oder D =
1 1 . 1 −1
94
5 Wavelets in h¨ oheren Dimensionen
6
6
5x
ox
x
ox
x
ox
5x
x
x
x
x
x
ox
x
ox
x
ox
x
ox
x
ox
x
ox
x
x
ox
x
ox
x
ox
x
x
x
x
x
x
ox
x
ox
x
ox
x
ox
x
ox
x
ox
x
x
ox
x
ox
x
ox
x
x
x
x
x
x
ox
x
ox
x
ox
x-
ox
x
ox
x
ox
5
x-
5
Abb. 5.8. Sampling-Gitter (x) und Subsampling-Gitter (o) f¨ ur den Quincunx und f¨ ur den separablen Fall
√ Man beachte, daß f¨ ur das erste D die Gleichheit D = 2R gilt, wobei R eine orthogonale Matrix ist (eine 45o -Rotation). F¨ ur das zweite D folgt nach der Rotation eine Spiegelung an der x1 -Achse. Zur Vereinfachung unserer Diskussion arbeiten wir mit dem ersten D. Gehen wir in diesem Falle von einer Skala zu der n¨achstgr¨oberen u ¨ber, dann √ wird die Skalierungsfunktion um 45o rotiert und in x um einem Faktor 2 skaliert. Die Approximationsr¨ aume Vj werden in der u ¨ blichen Weise durch die Forderung Vj ⊂ Vj+1 definiert. Wir sehen uns die beiden Approximationsr¨ aume V0 und V−1 an. Die Funktionen in V0 lassen sich als Linearkombinationen der Skalierungsfunktionen ϕ(x − k) schreiben. Wir nehmen an, daß ϕ(x − k) in einem Bereich um x = 0 lokalisiert ist; dann ist ϕ(x − k) um x = k lokalisiert und wir ordnen dieser Funktion den Punkt k ∈ Z2 zu. Auf dieselbe Weise sind die Skalierungsfunktionen ϕ(D−1 x − k) in V−1 den Punkten Dk, k ∈ Z2 , zugeordnet. Wir bezeichnen die Menge dieser Punkte mit DZ2 . Mitunter bezeichnen wir Z2 als das Sampling-Gitter und DZ2 als das Subsampling-Gitter . In Abb. 5.8 haben wir das Sampling-Gitter und das Subsampling-Gitter f¨ ur den Quincunx-Fall und f¨ ur den separablen Fall dargestellt. Wir sehen, daß es zweimal so viele“ Skalierungsfunktionen in V0 gibt, als es in V−1 im ” Quincunx-Fall gibt. Somit erscheint es plausibel, daß die Differenz zwischen V0 und V−1 von ψ(D−1 x − k) f¨ ur ein Wavelet ψ aufgespannt werden muß. Dieses etwas intuitive Argument l¨ aßt sich tats¨achlich streng begr¨ unden, aber wir werden das hier nicht tun. Stattdessen stellen wir fest, daß es im separablen Fall viermal soviele“ Skalierungsfunktionen in V0 als in V−1 gibt und daß wir ” drei verschiedene Wavelets brauchen. Dilatierte und translatierte Wavelets k¨ onnen nun wie folgt definiert werden: ψj,k (x) = 2j/2 ψ(Dj x − k);
j ∈ Z, k ∈ Z2 .
Ihre zugeordneten Detail-R¨ aume werden mit Wj bezeichnet. Die Forderungen Vj ⊂ Vj+1 und Wj ⊂ Vj+1 induzieren die Skalierungs- und die WaveletGleichung
5.3 Nichtseparable Wavelets
ϕ(x) =
k
hk ϕ(Dx − k) und ψ(x) =
k
95
gk ϕ(Dx − k).
Wieder werden die Skalierungsfunktion und das Wavelet vollst¨andig durch die Tiefpaß- und Hochpaß-Filterkoeffizienten (hk ) und (gk ) bestimmt. Im biorthogonalen Fall haben wir auch die dualen Skalierungsfunktionen und Wavelets, welche die dualen Skalierungs- und Wavelet-Gleichungen mit den dualen Filtern ( hk ) und ( gk ) erf¨ ullen. Die Biorthogonalit¨atsbedingungen f¨ ur Wavelets und Skalierungsfunktionen lassen sich in Bedingungen f¨ ur die Filter transformieren. Im Frequenzbereich werden sie zu
(5.9)
1 + π, ξ2 + π)H(ξ1 + π, ξ2 + π) = 1 , ξ2 )H(ξ1 , ξ2 ) + H(ξ H(ξ G(ξ1 , ξ2 )G(ξ1 , ξ2 ) + G(ξ1 + π, ξ2 + π)G(ξ1 + π, ξ2 + π) = 1 , ξ2 )H(ξ1 , ξ2 ) + G(ξ 1 + π, ξ2 + π)H(ξ1 + π, ξ2 + π) = G(ξ 1 + π, ξ2 + π)G(ξ1 + π, ξ2 + π) = H(ξ1 , ξ2 )G(ξ1 , ξ2 ) + H(ξ
1, 1, 0, 0.
Die Konstruktion der biorthogonalen Quincunx-Wavelets l¨auft auf die Konstruktion von Filtern hinaus, die diese Gleichungen erf¨ ullen. Eine m¨ogliche Methode besteht darin, mit einer Menge von symmetrischen biorthogonalen Filtern in einer Dimension zu beginnen. Diese sind s¨amtlich Polynome in cos ω, und ersetzt man cos ω durch 21 (cos ξ1 + cos ξ2 ), dann erh¨alt man zweidimensionale Filter, die (5.9) erf¨ ullen. Bei der Forward-Wavelet-Transformation beginnen wir mit der feinsten uhren rekursiv folgende Zerlegung durch: Skala mit fJ ∈ Vj und f¨ sj+1,k ϕj+1,k (x) = fj+1 (x) k
= fj (x) + dj (x) =
sj,k ϕj,k (x) +
k
wj,k ψj,k (x).
k
Wir berechnen sj und wj aus sj+1 mit Hilfe der Analyse-Filter ∗ sj+1 sj = (↓ 2)D H
∗ sj+1 . und wj = (↓ 2)D G
Der Downsampling-Operator (↓ 2)D eliminiert alle Koeffizienten mit Ausnahme derjenigen, die Indizes k ∈ DZ2 haben. Diese werden mitunter als gerade Indizes bezeichnet und alle anderen Indizes heißen ungerade. Bei der inversen Wavelet-Transformation rekonstruieren wir sukzessive die Werte sj+1 aus sj und wj , indem wir die Synthese-Filter sj+1 = H(↑ 2)D sj + G(↑ 2)D wj verwenden, wobei der Upsampling-Operator (↑ 2)D Nullen an den ungeraden Indizes stehen l¨ aßt. Aufgrund ihrer Konstruktion behandeln die Quincunx-Wavelets die Koordinatenrichtung und die Diagonalrichtung in gleicher Weise, und wir haben
96
5 Wavelets in h¨ oheren Dimensionen ξ2 π 6
@
W−2@
W−1 W−3 0
−π
W
W−1
@ @ W−3@ @ @ @ @ @ W @ V−3
−2 @ −2 @ @ @ W−3 @ W−3@ @ @ W−1 @ W−2 W−1 @ @
−π
0
- ξ1 π
Abb. 5.9. Die ideale Frequenzebenen-Zerlegung f¨ ur Quincunx-Wavelets
eine gr¨ oßere Rotationsinvarianz erreicht als bei separablen Wavelets. Eine 45o Rotation bewegt (approximativ) die Frequenzkan¨ale um einen Schritt: Wj wird zu Wj+1 . Das steht in einem scharfen Gegensatz zum separablen Fall, in dem die gleiche Rotation den Frequenzkanal WD in WH und WV aufteilt und die beiden letzteren WD gemischt sind. In Abb. 5.9 haben wir die Frequenzebenen-Zerlegung f¨ ur Quincunx-Wavelets dargestellt. Hexagonale Wavelets Ein Quincunx-Wavelet hat eine gr¨ oßere Rotationsinvarianz, weil in der Dilatationsmatrix eine Rotation enthalten ist. Eine andere Methode besteht darin, ein von Z2 verschiedenes Sampling-Gitter zu verwenden. Eine Alternative ist die Verwendung des Hexagonalgitters Γ in Abb. 5.10. Eine interessante Eigenschaft des hexagonalen Gitters besteht darin, daß es eine optimale Sampling-Dichte f¨ ur bandbegrenzte Funktionen liefert, die keine Richtungspr¨ aferenz haben. Genauer gesagt, sei f zirkul¨ar bandbegrenzt, das heißt, f(ξ) = 0 f¨ ur |ξ| > π. Das Sampling auf dem Gitter Z2 ist dem Quadrat −π ≤ ξ1 , ξ2 ≤ π im Frequenzbereich zugeordnet; eine in diesem Frequenzbereich bandbegrenzte Funktion l¨ aßt sich aus ihren Sample-Werten auf dem ¨ Gitter Z2 exakt rekonstruieren. Aquivalent kann eine auf dem Hexagonalgitter gesampelte Funktion aus den Sample-Werten rekonstruiert werden, falls sie auf den hexagonalen Bereich in Abb. 5.10 bandbegrenzt ist. Wir sehen anhand dieser Abbildung, daß man im hexagonalen Fall eine – im Vergleich zum rektangul¨ aren Sampling – kleinere Fl¨ ache1 im Frequenzbereich u ¨berdecken muß, um die Funktion f aus ihren Sample-Werten zu rekonstruieren. Diese 1
Die Fl¨ ache ist 13, 4% kleiner.
5.3 Nichtseparable Wavelets
97
Abb. 5.10. Das Hexagonalgitter (links) und die Samplingfrequenz-Bereiche (rechts) f¨ ur rektangul¨ ares und hexagonales Sampling
Fl¨ achen sind proportional zu den Sampling-Dichten, die den Gittern entsprechen, das heißt, der Anzahl der Sample-Punkte pro Einheitsfl¨ache. Verwenden wir also das Hexagonalgitter, dann brauchen wir 13, 4% weniger Sample-Werte der zirkul¨ar bandbegrenzten Funktion f , als es beim u ¨ blichen rektangul¨aren Sampling-Gitter der Fall ist. Der Approximationsraum V0 wird von den Skalierungsfunktionen ϕ(x − γ) aufgespannt, wobei γ ∈ Γ . Wir verschieben also ϕ l¨angs des Hexagonalgitters. Unter der Voraussetzung, daß ϕ in Bezug auf den Ursprung zentriert ist, gibt es eine Skalierungsfunktion, die in Bezug auf jeden Punkt des Hexagonalgitters zentriert ist. Die dilatierten, translatierten und normalisierten Skalierungsfunktionen sind definiert durch ϕj,γ (x) = 2j ϕ(2j x − γ),
j ∈ Z, γ ∈ Γ .
Es ist auch m¨oglich, eine Dilatationsmatrix D zu verwenden, die eine Rotation enth¨alt, aber wir betrachten hier nur ein reines Skalieren mit 2. In diesem Fall werden drei Wavelets ψ 1 , ψ 2 und ψ 3 ben¨otigt, um die Differenz von V1 und V0 aufzuspannen. Bei entsprechender Konstruktion ist die Skalierungsfunktion invariant gegen¨ uber 60o -Drehungen und jedem Wavelet ist eine der Richtungen von Abb. 5.11 zugeordnet. Genauer gesagt: ψ 1 oszilliert in der x1 -Richtung und man hat ψ 2 (x) = ψ 1 (R60o x), ψ 3 (x) = ψ 1 (R120o x), wobei R60o und R120o Drehungen von 60o und von 120o im Uhrzeigersinn bezeichnen. In Abb. 5.11 haben wir auch die Frequenzebenen-Zerlegung dargestellt, die diesen Wavelets zugeordnet ist. Die Konstruktion derartiger Skalierungsfunktionen und Wavelets beruht auf der Konstruktion geeigneter Tiefpaß- und Hochpaß-Filter. Der Zusammenhang zwischen diesen Filtern und Skalierungsfunktionen sowie Wavelets wird durch Skalierungs- und Wavelet-Gleichungen hergestellt. Die Filter m¨ ussen gewisse Biorthogonalit¨atsbedingungen (perfekte Rekonstruktion) erf¨ ullen. Wir gehen hier nicht auf Einzelheiten ein, sondern weisen nur darauf hin, daß die Filterkonstruktion im Hexagonalgitter sehr viel komplizierter wird.
98
5 Wavelets in h¨ oheren Dimensionen
ψ3 A K A
ψ2
A A A A
ψ1
"b b " b " b " 3 b 2 " " W−1 bW−1 b H " b HH " 3 W2 W−2 " −2b H "b H" b 1 1 1 W−2 1 V−2 W−2 W−1 W−1
"HH b b" W2 W3 " " HH bb−2 −2 H 3 2 b" " b W−1 " W −1 b " b " b " b b"
Abb. 5.11. Hexagonale Wavelets und ihre Frequenzebenen-Zerlegung
5.4 Bemerkungen In der Arbeit [9] von Cohen und Daubechies konstruieren die Verfasser verschiedene Quincunx-Wavelet-Basen und untersuchen deren Regularit¨at. Folgende Tatsache ist interessant: Ist D eine Rotation, dann k¨onnen orthogonale Wavelets h¨ ochstens kontinuierlich sein; hingegen sind beliebige regul¨are orthogonale Wavelets m¨ oglich, wenn D auch eine Spiegelung einschließt. F¨ ur biorthogonale Wavelets l¨ aßt sich eine beliebige Regularit¨at f¨ ur beide Auswahlm¨ oglichkeiten von D erreichen. Einige Wavelets auf dem Hexagonalgitter werden von Cohen und Schlenker in [10] konstruiert. Abschließend sei bemerkt, daß es eine Theorie zur Konstruktion von Skalierungsfunktionen und Wavelets f¨ ur allgemeinere Sampling-Gitter Γ und Dilatationsmatrizen D gibt. Im Artikel von Strichartz [28] wird diese Theorie zusammen mit einer allgemeinen Konstruktion orthogonaler Wavelets dargelegt. Diese Wavelets k¨onnen beliebig glatt gemacht werden, aber sie haben keinen kompakten Tr¨ ager. Tats¨ achlich lassen sie sich als eine Verallgemeinerung der Battle-Lemari´e-Wavelets auffassen, die wir in Abschnitt 8.4 angeben.
6 Das Lifting-Schema
Wir betrachten hier die Frage der Charakterisierung der mit einem kompakten Tr¨ ager versehenen biorthogonalen Wavelet-Basen (vgl. Kapitel 3), die beispielsweise denselben Tiefpaß-Filter haben.1 Wir verwenden hierzu den Euklidischen Divisionalgorithmus zur Zerlegung des Filter- Polynoms“ in gerade ” und ungerade Glieder. Dar¨ uber hinaus beschreiben wir, wie sich eine beliebige mit einem kompakten Tr¨ ager versehene biorthogonale Filterbank sukzessiv durch durch Lifting” Schritte“ aufbauen l¨ aßt, indem man mit dem trivialen Subsampling von Elementen mit geraden und ungeraden Indizes beginnt. Die Konstruktion folgt aus der Faktorisierung, die man durch den Euklidischen Algorithmus erh¨alt. Dieses Verfahren wurde auf die Konstruktion von integer to integer“ MSA” Filterb¨ anken2 angewendet, was eine verlustlose Codierung erm¨oglicht. Die aufeinanderfolgenden Lifting-Schritte lassen sich auch dazu benutzen, die Filter maßgeschneidert an das Signal anzupassen, indem man ein Vorhersage-Schema f¨ ur die Konstruktion der Hochpaß-Filter verwendet.
6.1 Die Grundidee Ein Lifting-Schritt Die Grundidee beim Lifting-Schema besteht darin, mit Hilfe einer Folge von Lifting-Schritten gr¨ oßere Filter aus sehr einfachen Filtern aufzubauen. In Abb. 6.1 zeigen wir den Lifting-Schritt. Wir speisen sj+1 in den Analyse-Teil einer Filterbank mit den Filtern h und g ein (einschließlich Downsampling), um 1
2
˜ usw. die Aus praktischen Notationsgr¨ unden bezeichne in diesem Kapitel h und h ˜ Analyse- bzw. die Synthese-Filterfunktion. An anderer Stelle verwenden wir H und H als entsprechende Schreibweise, das heißt, die umgekehrte Reihenfolge und Großbuchstaben. MSA steht f¨ ur Multi-Skalen-Analyse.
100
6 Das Lifting-Schema
- h∗
- snj
sj
? p
sj+1
- g∗
wj
? - − - wjn
Abb. 6.1. Der Lifting-Schritt
sj und wj zu erhalten. Danach bilden wir neue“ Skalierungs- und Wavelet” Koeffizienten snj = sj und wjn = wj − psj , wobei p einen Filter bezeichnet. Man beachte, daß wjn = g ∗ sj+1 − ph∗ sj+1 = (g ∗ − ph∗ )sj+1 = (g − hp∗ )∗ sj+1 , so daß snj und wjn das Ergebnis der Anwendung neuer“ Filter auf sj+1 ist: ” snj = hn∗ sj+1
und
wjn = g n∗ sj+1 ,
wobei hn = h
und g n = g − hp∗ .
Zur Rekonstruktion von sj+1 aus snj und wjn verfahren wir einfach so wie in Abb. 6.2 angegeben. Das l¨ auft daraus hinaus, die neuen gelifteten SyntheseFilter h+ gp und g n = g, hn = anzuwenden und
sj+1 = hn snj + gn wjn
zu berechnen. sn j
sj
- e h
?
?
p
wjn
? - + w j
+
6 -
- sj+1
ge
Abb. 6.2. Invertieren der gelifteten Filterbank
6.1 Die Grundidee
101
Der Zusammenhang zwischen dem urspr¨ unglichen Filter und den gelifteten Filtern im Fourier-Bereich l¨ aßt sich in Matrixform durch
1 s(ω) hn (ω) h(ω) = (6.1a) , 0 1 gn (ω) g(ω)
1 0 h(ω) hn (ω) = (6.1b) −s(ω) 1 g(ω) g n (ω)
darstellen, wobei s(ω) die Filterfunktion f¨ ur p ist. Zur Motivierung des Lifting-Schritts betrachten wir ein einfaches Beispiel, bei dem die Anfangsfilter die Lazy-Filter sind, das heißt, sj,k = sj+1,2k
n = sj+1,2k+1 . und wj,k
Im Hinblick auf eine Kompression ist das kein n¨ utzliches Filterpaar, denn man kann nicht erwarten, daß viele Wavelet-Koeffizienten klein sind. Das ist die Stelle, an der der Vorhersage-Filter p die B¨ uhne betritt. Wir versuchen, die ungeradzahlig indizierten Skalierungskoeffizienten mit Hilfe einer linearen Interpolation aus den geradzahlig indizierten Skalierungskoeffizienten vorherzusagen: sj+1,2k+1 =
1 (sj+1,2k + sj+1,2k+2 ), or 2
w j,k = psj,k =
1 (sj,k + sj,k+1 ). 2
Die neuen Wavelet-Koeffizienten werden dann die Vorhersage-Fehler n wj,k = wj,k − w j,k
1 = sj+1,2k+1 − (sj+1,2k + sj+1,2k+2 ) 2 1 1 = − sj+1,2k + sj+1,2k+1 − sj+1,2k+2 . 2 2
Wir sehen, daß g0n = g2n = −1/2 der neue Hochpaß-Filter ist, g1n = 1 ist und alle anderen gkn = 0 sind. In Bereichen, in denen das Signal glatt ist, kann man erwarten, daß die Vorhersage exakt ist und demnach die entsprechenden Wavelet-Koeffizienten klein sind. Eine eingehendere Analyse lehrt, daß der Lifting-Schritt die Anzahl der verschwindenden Momente erh¨ oht, und zwar von 0 bei der LazyWavelet-Transformation auf bis zu 2 verschwindende Momente. (Bei linearen Polynomen sind die Wavelet-Koeffizienten gleich 0). Duales Lifting Nach dem Lifting-Schritt haben sich die Wavelet-Koeffizienten ge¨andert, aber die Skalierungskoeffizienten sind unver¨ andert geblieben. Letztere k¨onnen durch einen dualen Lifting-Schritt so aktualisiert werden, wie in Abb. 6.3
102
6 Das Lifting-Schema
- h∗
sj
?
- + - snj 6
p
sj+1
- g∗
?
wj - −
u
6 - wjn
Abb. 6.3. Duales Lifting
dargestellt. Wir wenden einen updating“-Filter u auf die gelifteten Wavelet” Koeffizienten an und erhalten neue Skalierungskoeffizienten snj = sj + uwjn . Der Grund f¨ ur das Aktualisieren der Skalierungskoeffizienten besteht darin, ein Aliasing zu vermeiden. In unserem Fall mit den Lazy-Filtern haben alle Signale mit den gleichen geradzahlig indizierten Skalierungskoeffizienten achsten Level die gleichen Skalierungskoeffizienten. Um diesen sj+1,2k im n¨ Umstand (teilweise) zu vermeiden, k¨ onnen wir f¨ ur den Mittelwert der Skalierungskoeffizienten eine Konstante erzwingen, das heißt, snj,k = sj+1,2k . k
k
Das ist in der Tat dazu ¨ aquivalent, ein duales verschwindendes Moment zu haben. Wir werden das nicht weiter begr¨ unden, sondern machen mit folgendem Ansatz weiter: n snj,k = sj,k + uwj,k n n = sj,k + Awj,k + Bwj,k−1
= −B/2 sj+1,2k−2 + Bsj+1,2k−1 + (1 − A/2 − B/2)sj+1,2k + Asj+1,2k+1 − A/2 sj+1,2k+2 . Man sieht unschwer, daß A = B = 1/4 einen konstanten Mittelwert liefert. In diesem Fall werden hn−2 = hn2 = −1/8, hn−1 = hn1 = 1/4 und hn0 = 3/4 die neuen Tiefpaß-Synthese-Filter und alle anderen hnk = 0. Die neuen Filter (hnk ) und (gkn ) sind die Analyse-Filter, die zur Hut-Skalierungsfunktion und zum Wavelet in Abb 4.7 geh¨ oren. Das duale Lifting wirkt sich folgendermaßen auf die Filter aus:
1 0 hn (ω) h(ω) = (6.2a) , −t(ω) 1 gn (ω) g(ω)
n
h (ω) 1 t(ω) h(ω) = (6.2b) , g n (ω) 0 1 g(ω) wobei t(ω) die Filterfunktion f¨ ur u ist.
6.2 Faktorisierungen
103
6.2 Faktorisierungen Wir hatten in Kapitel 3 gesehen, daß jeder biorthogonalen Wavelet-Basis mit endlichem Tr¨ ager Polynome“ entsprechen, die bis auf Verschiebungen und ” Multiplikation mit Skalaren eindeutig definiert sind. Ein solches Polynom“ ” l¨ aßt sich in der Form L−1 hk z −k h(z) = k=0
L−1 L−1−N schreiben. (Eine Verschiebung erzeugt k=0 hk z −k−N = k=−N hk+N z −k .) Ebenso hatten wir in Kapitel 3 gesehen, daß es drei weitere Polynome ˜ g, g˜ derart gibt, daß h, ˜ −1 ) + g(z)˜ g(z −1 ) = 2 h(z)h(z −1 ˜ ) + g(z)˜ g(−z −1 ) = 0 h(z)h(−z
Das sind die Bedingungen f¨ ur die perfekte Rekonstruktion aus der Analyse. Wir k¨ onnen diese Bedingungen mit Hilfe der Modulationsmatrix folgendermaßen (mit Redundanz darstellen):
˜ ˜ h(z −1 ) g(z −1 ) 10 h(z) h(−z) =2 . h(−z −1 ) g(−z −1) 01 g˜(z) g˜(−z) Wir teilen nun jedes Polynom in einen geraden und einen ungeraden Teil h(z) = he (z 2 ) + z −1 ho (z 2 ) auf, wobei he (z 2 ) := (h(z) + h(−z))/2, ho (z 2 ) := (h(z) − h(−z))/(2z −1 ) und wir definieren die Polyphasenmatrix P (und analog P˜ ) durch
1 1 1 h(z) g(z) he (z 2 ) ge (z 2 ) . P (z 2 ) := = h(−z) g(−z) ho (z 2 ) go (z 2 ) 2 z −z Die Matrix l¨ aßt sich nun als P˜ (z −1 )t P (z) = I schreiben, wobei I die Einheitsmatrix ist. Wir verschieben und skalieren nun g und g˜ derart, daß det P (z) ≡ 1.3 Man beachte, daß die Basis genau dann orthogonal ist, wenn P = P˜ , das ˜ und g = g˜. heißt, h = h 3
Das ist m¨ oglich, denn det P (z) muß die L¨ ange 1 haben, falls die inverse Matrix P˜ (z −1 )t nur Polynome enthalten soll. Skalieren und Verschiebungen erfolgen demnach im Einklang.
104
6 Das Lifting-Schema
Bei einem Blick auf P˜ (z −1 )t P (z) = I stellen wir fest, daß P (das heißt, h ˜ und g˜) bestimmt, denn die Matrix P˜ (z −1 )t und g) die Matrix P˜ (das heißt, h ist die Inverse der Matrix P (z) und det P (z) = 1. Wir werden sogar Folgendes sehen: Ist h so gegeben, daß he und ho keine gemeinsamen Nullstellen (außer 0 und ∞) haben, dann l¨aßt sich so ein P (und somit auch P˜ ) unter Anwendung des Euklidischen Divisionsalgorithmus auf die gegebenen he und ho konstruieren. Wir geben den Euklidische Divisionsalgorithmus f¨ ur ganze Zahlen nun in einem speziellen Fall an, durch den das allgemeine Prinzip offensichtlich wird. Beispiel 6.1. Wir m¨ ochten den gr¨ oßten gemeinsamen Teiler von 85 und 34 finden und gehen folgendermaßen vor: 85 = 2 · 34 + 17 34 = 2 · 17 + 0,
wobei wir 2 · 34 ≤ 85 < 3 · 34 verwenden. Offensichtlich ist 17 ein Teiler von 34 und 85, und es ist der gr¨ oßte gemeinsame Teiler. Wir machen nun mit 83 und 34 weiter: 83 = 2 · 34 + 15 34 = 2 · 15 + 4 15 = 3 · 4 + 3 4=1·3+1 3 = 3 · 1 + 0.
Das bedeutet, daß 1 der gr¨ oßte gemeinsame Teiler von 83 und 34 ist, das heißt, beide Zahlen sind teilerfremd. In Matrixschreibweise hat man
83 21 21 31 11 31 1 = 34 10 10 10 10 10 0 ⊓ ⊔
Mit den Polynomen in der Polyphasenmatrix k¨onnen wir analog verfahren, aber die Folge der Teilungsschritte ist nicht mehr eindeutig, wie wir anhand der folgenden Beispiele sehen. Wir sind nur an dem Fall interessiert, in dem die zu dividierenden Polynome teilerfremd“ sind, daß heißt, sie haben keine ” gemeinsamen Nullstellen (außer 0 und ∞). Beispiel 6.2. Man setze h(z) = 1 + z −1 + 4z −2 + z −3 + z −4 und somit he (z) = 1+4z −1 +z −2 , ho (z) = 1+z −1 . Wir dividieren he durch ho , wobei wir fordern, daß die L¨ ange des Restes echt kleiner ist, als die L¨ange von ho . Das ist auf dreierlei Weise m¨ oglich: 1 + 4z −1 + z −2 = (1 + z −1 )(1 + z −1 ) + 2z −1 1 + 4z −1 + z −2 = (1 + 3z −1 )(1 + z −1 ) − 2z −2
1 + 4z −1 + z −2 = (3 + z −1 )(1 + z −1 ) − 2.
6.2 Faktorisierungen
105
Diese Division ist also nicht eindeutig. Wir w¨ahlen die erste Division und setzten den Algorithmus fort: 1 + z −1 = 2z −1 (1/2 z + 1/2) + 0. Der Algorithmus stoppt hier, wenn der Rest gleich 0 ist. Wir k¨onnen die Schritte des Algorithmus wie folgt darstellen:
−1 1/2z + 1/2 1 2z 1 + z −1 1 1 + 4z −1 + z −2 . = 1 0 1 + z −1 1 0 0 Man beachte, daß die Anzahl der Schritte durch die L¨ange der Division beschr¨ ankt ist, die im vorliegenden Fall gleich 2 ist. ⊓ ⊔ Wenn der gemeinsame Faktor die L¨ ange 1 hat, dann haben die beiden Polynome he und ho keine gemeinsamen Nullstellen außer m¨oglicherweise 0 und ∞. Beispiel 6.3. Der Haarsche Fall l¨ aßt sich durch h(z) = 1 + z −1 mit he (z) = ho (z) ≡ 1 darstellen. Der Algorithmus kann dann durch
1 11 1 = 1 10 0 dargestellt werden, womit ein Schritt ausgef¨ uhrt ist. ⊓ ⊔ Wir erhalten schließlich die nachstehende Faktorisierung (6.3):
' k/2
1 0 he (z) 1 si (z) C = . 0 1 ti (z) 1 ho (z) 0 i=1
Wir geben nun ein Argument an, das zur Faktorisierung (6.3) f¨ uhrt. Aus den Beispielen erhalten wir das Schema
q (z) 1 q (z) 1 rk (z) he (z) = 1 ... k , ho (z) 1 0 1 0 0 oßter gemeinsamer Faktor von he (z) und ho (z) ist. Die Nullwobei rk (z) gr¨ stellen von rk (z) sind (mit Ausnahme von 0 und ∞) genau die gemeinsamen Nullstellen von he (z) und ho (z). Treten he (z) und ho (z) in einer Spalte einer Polyphasenmatrix P (z) auf, f¨ ur die det P (z) = 1, dann muß offensichtlich jedes rk (z) die L¨ange 1 haben, das heißt, rk (z) = Cz M gilt f¨ ur eine ganze Zahl M und eine von 0 verschiedene Konstante C. (rk (z) faktorisiert det P (z), denn es tritt als Faktor in der ersten Spalte auf.) Wir betrachten jetzt eine Polyphasenmatrix
he (z) ge (z) P (z) = ho (z) go (z)
106
6 Das Lifting-Schema
mit det P (z) = 1. Wir sehen, daß
01 1 0 qi (z) 1 = 1 0 10 qi (z) 1 =
1 qi (z) 0 1
01 , 10
und falls die L¨ ange von he echt kleiner als die L¨ange von ho ist, dann gilt onnen wir q2 (z) ≡ 0. Deswegen k¨
1 q1 (z) 1 0 1 0 rk (z) he (z) = ... ho (z) 0 1 q2 (z) 1 qk (z) 1 0
01 10
2
schreiben, wenn k gerade ist, denn = I. Ist k ungerade, dann k¨onnen
1 0 ugen. wir einen Faktor mit qk+1 = 0 hinzuf¨ qk+1 1 Nun hat das Produkt eine gerade Anzahl von Faktoren und wir erhalten die gew¨ unschte Faktorisierung
(6.3)
'
k/2
he (z) 1 si (z) 1 0 C = , ho (z) 0 1 ti (z) 1 0 i=1
wenn wir sowohl he als auch ho um den Faktor z M verschieben, der im Algorithmus auftritt. (Das bedeutet, daß ge und go um z −M verschoben werden m¨ ussen, um det P (z) = 1 zu erhalten.)
6.3 Lifting Die Faktorisierung (6.3) liefert eine Polyphasenmatrix P n (z) durch
k/2
' 1 si (z) he (z) gen (z) C 0 1 0 P (z) := := , 0 1/C 0 1 ho (z) gon (z) ti (z) 1 n
i=1
wobei die letzte Skalierung 1/C so gew¨ ahlt wird, daß man det P n (z) = 1 erh¨ alt. Hier gibt der obere Index n an, daß gen und gon nicht von dem gleichen Hochpaß-Filter g kommen, mit dem wir in P angefangen hatten. Wir haben lediglich den Euklidischen Algorithmus auf he und h0 angewendet, ohne g zu ber¨ ucksichtigen. Dar¨ uber hinaus steht bei einer gegebenen Polyphasenmatrix P (z) jedes P n (z) mit demselben h(z), das heißt, mit identischen ersten Spalten und det P n (z) = det P (z) = 1, zu P (z) durch die Relation
6.4 Implementierungen
P n (z) = P (z)
1 s(z) 0 1
107
f¨ ur ein Polynom s(z) in Beziehung. Analog erf¨ ullt jedes P n (z) mit demselben n g(z) als P (z) und mit det P (z) = 1 die Beziehung
1 0 P n (z) = P (z) t(z) 1 f¨ ur ein Polynom t(z). In diesen beiden F¨ allen sagt man, daß man P n aus P durch Lifting bzw. duales Lifting, erh¨ alt. Unter Verwendung dieser Terminologie k¨ onnen wir die nachstehende Schlußfolgerung ziehen: Jede Polyphasenmatrix l¨ aßt sich aus dem trivialen Subsampling geradzahlig und ungeradzahlig indizierter Elemente (mit der trivialen Polyphasenmatrix I, das heißt, h(z) = 1 und g(z) = z −1 ) sowie durch anschließende Lifting-Schritte, duale Lifting-Schritte und Skalieren gewinnen.
6.4 Implementierungen Wir wenden uns nun der Frage zu, wie die Faktorisierung implementiert wird. Die Polyphasenmatrix P (z)t f¨ uhrt den Analyse-Teil der Transformation durch. Zum Beispiel repr¨ asentiert mit dem obigen x(z) = xe (z 2 ) + z −1 xo (z 2 ) die Darstellung
he (z)xe (z) + ho (z)xo (z) t xe (z) = P (z) xo (z) ge (z)xe (z) + go (z)xo (z) die geradzahlig numerierten Eintr¨ age der Ausgaben h(z)x(z) und g(z)x(z) nach dem Subsampling. Insbesondere diskutieren wir jetzt den Haarschen Fall mit h(z) = 1 + z −1 . Beispiel 6.4. Wenden wir den Algorithmus auf den Haarschen Tiefpaß-Filter h(z) = 1 + z −1 an, dann haben wir he (z) = ho (z) = 1 und erhalten
1 10 1 = . 1 11 0 Das liefert P n (z) = das heißt, g n (z) = z −1 , und
10 10 10 = 11 11 01
1 −1 P˜ n (z −1 ) = (P n (z)t )−1 = , 0 1 ˜ n (z) = 1 und g˜n (z) = −1 + z bedeutet. was seinerseits h
⊓ ⊔
108
6 Das Lifting-Schema
Betrachten wir die u ¨ bliche Haarsche Polyphasenmatrix ⎤ ⎡ 1 −1/2 ⎦, P (z) = ⎣ 1 1/2
das heißt, h(z) = 1 + z −1 und g(z) = −1/2 + 1/2z −1, dann haben wir (identische erste Spalten)
1 s(z) n P (z) = P (z) , 0 1 wobei nun s(z) = 1/2. ¨ Aquivalent ist
1 −1/2 10 1 −1/2 = . P (z) = P (z) 0 1 11 0 1 n
Dementsprechend erhalten wir
1 −1 1 0 P˜ (z −1 ) = 0 1 1/2 1 Diese Faktorisierung in einen Lifting-Schritt und einen dualen LiftingSchritt wird folgendermaßen implementiert. (j) Wir bezeichnen mit {xk }k das zu analysierende Signal4 und es seien {vk }k (j) und {uk }k seine sukzessiven Tiefpaß- und Hochpaß-Komponenten nach der Phase j = 1, 2, . . .. In unserem Beispiel wird das f¨ ur die Analyse zu (1) vk = x2k (1) uk = x2k+1
(2)
(1)
(1)
vk = vk + uk (2) (1) uk = uk (2)
vk = vk (2) (2) uk = −1/2vk + uk
wobei jeder Schritt einem Matrixfaktor entspricht.
4
In Abschnitt 6.1 hatten wir hierf¨ ur den Buchstaben s anstelle von x verwendet.
6.5 Bemerkungen
109
F¨ ur die Rekonstruktion werden die Schritte umgekehrt: (2) vk = vk (2) uk = 1/2vk + uk
vk = vk − uk (1) (2) uk = uk
x2k = vk (1) x2k+1 = uk
(1)
(2)
(2)
(1)
Das ist ein Beispiel f¨ ur eine integer-to-integer“ Transformation. Man beachte ” auch, daß eine derartige Faktorisierung eine Reduktion der Anzahl der Operationen darstellt, die zur Ausf¨ uhrung der Transformation ben¨otigt werden. ¨ Ubungsaufgaben zu Abschnitt 6.4 ¨ Ubungsaufgabe 6.1. Bestimmen Sie die Polyphasenmatrix P (z) f¨ ur die Lazy-Filterbank: h(z) = ˜ h(z) = 1 and g(z) = g˜(z) = z −1 . (Identit¨at) ¨ Ubungsaufgabe 6.2. Wenden Sie den Euklidischen Divisionsalgorithmus auf die folgenden Polynome an: (1 + z −1 )(1 + 2z −1) = 1 + 3z −1 + 2z −2
und 1 + z −1 .
¨ Ubungsaufgabe 6.3. Bestimmen Sie voneinander verschiedene Polyphasenund duale Polyphasenmatrizen, die das Polynom h(z) von Beispiel 6.2 gemeinsam haben. ¨ Ubungsaufgabe 6.4. Was geschieht in Beispiel 6.4, wenn h(z) = 1 + z −1 auf √ √ 1/ 2 + 1/ 2 z −1 skaliert wird?
6.5 Bemerkungen Dieses Kapitel basiert auf der Arbeit Daubechies & Sweldens [12]. F¨ ur Informationen u ¨ ber die Konstruktion von integer-to-integer Transformationen verweisen wir auf die Arbeit Calderbank & Daubechies & Sweldens & Yeo [6]. ¨ Einen praktischen Uberblick findet man im Artikel von Sweldens & Schr¨oder [29]. Alle diese Arbeiten enthalten viele weitere Literaturhinweise.
7 Die kontinuierliche Wavelet-Transformation
Die kontinuierliche Wavelet-Transformation ist der Prototyp f¨ ur die WaveletTechniken und hat ihren Platz unter den Theorien des Typs Kernreproduk” tion“ 1 . Im Vergleich zur diskreten Transformation bietet die kontinuierliche Transformation mehr Freiheit bei der Wahl des analysierenden Wavelets. In gewisser Weise ist die diskrete Wavelet-Transformation von Kapitel 4 eine Antwort auf die Frage, wann das dyadische Sampling der stetigen Transformation keinen Informationsverlust nach sich zieht. Dieses Kapitel ist m¨ oglicherweise weniger elementar, aber die Argumente sind ziemlich naheliegend und unkompliziert.
7.1 Einige grundlegende Fakten Die kontinuierliche Wavelet-Transformation wird durch den folgenden Ausdruck definiert: ∞ t − b −1/2 dt. Wψ f (a, b) = f (t)ψ a a −∞ Hier k¨ onnen wir ψ ∈ L2 , a > 0, nehmen und ψ ist reellwertig und (der Einfachheit halber) absolut integrierbar. Die Variable a liefert eine kontinuierliche Menge von Skalen (Dilatationen) und b ist eine kontinuierliche Menge von Positionen (Translationen). Bei der diskreten Transformation waren diese beiden Mengen diskret. Man beachte, daß sich dies als Faltung auffassen l¨aßt. Mit der Bezeichnung ψa (t) = a−1/2 ψ(−t/a) haben wir W f (a, b) := Wψ f (a, b) = f ∗ ψa (b) 1
‘reproducing kernel’ type theories.
112
7 Die kontinuierliche Wavelet-Transformation
oder, nach einer Fourier-Transformation (in) der Variablen b 1a (β). Fb W f (a, β) = f(β)ψ
Wird die letzte Relation mit einem Faktor multipliziert und u ¨ ber a integriert, dann k¨ onnten wir gerade einen konstanten Faktor mal f(β) erhalten. Wir k¨onnen dann eine inverse Fourier-Transformation durchf¨ uhren und f aus W f reproduzieren. Wir f¨ uhren nun eine Multiplikation mit dem komplexen Konjugierten von 1a durch und integrieren unter Verwendung der Voraussetzung, daß ψ reellψ wertig ist: ∞ 1a (β) da/a2 = Fb W f (a, β) ψ 0 ∞ 1a (β)|2 da/a2 (7.1) |ψ = fˆ(β) 0 ∞ 2 ˆ |ψ(ω)| dω/ω := Cψ fˆ(β), = f (β) 0
wobei wir nun voraussetzen, daß Cψ =
0
∞
2 |ψ(ω)| dω/ω
positiv und finit ist. Das wird als die Zul¨assigkeitsbedingung bezeichnet. Diese Bedingung impliziert ψ(0) = 0, denn aus der absoluten Integrierbarkeit von ψ folgt, daß ψ eine stetige Funktion ist. Die Bedingung l¨aßt sich so interpretieren, daß ψ eine Ausl¨oschungseigenschaft haben muß: ψ(t) dt = ψ(0) = 0. Somit erhalten wir (unter Außerachtlassung von Konvergenzfrage) durch eine inverse Fourier-Transformation die Inversionsformel ∞ ∞ t−b f (t) = Cψ−1 W f (a, b) a−1/2 ψ da/a2 db. a −∞ 0 Offensichtlich gibt es viele reellwertige Funktionen ψ ∈ L1 ∩ L2 mit der Eigenschaft 0 < Cψ < ∞. Erst die Forderung, daß bereits die Sample-Werte von Wψ f (a, b), das heißt, die Werte Wψ f (2j , k2−j ), j, k ∈ Z, hinreichen sollen, bewirkt, daß der Funktion ψ einschr¨ ankendere Bedingungen auferlegt werden m¨ ussen. Klarerweise reichen diese Sample-Werte aus, wenn {ψ(2j t − k)}j,k eine Basis ist, denn in diesem Fall sind wir wieder in Kapitel 4. Unter Verwendung der Parseval-Formel halten wir auch fest, daß ∞ ∞ ∞ |W f (a, b)|2 da/a2 db = Cψ |f (t)|2 dt. (7.2) −∞
0
−∞
2
Beispiel 7.1. Man betrachte das Wavelet ψ(t) = te−t . Man nehme f (t) = H(t− t0 )− H(t− t1), wobei t0 < t1 ist und H(t) die Heaviside-EinheitssprungFunktion bei t = 0 bezeichnet.
7.2 Globale Regularit¨ at
113
Weiter ist 2 t1 t−b − t − b t − b a W f (a, b) = e a−1/2 ψ a−1/2 dt dt = a a t0 t0 2
t1 1 1/2 − t−b a = =− a e 2 t0 2 2 t −b − 1a 1 1/2 − t0a−b = a −e e 2
t1
und deswegen klingt W f (a, b) in b abseits von b = t0 und b = t1 schnell ab. Dar¨ uber hinaus ist dieser Effekt ausgepr¨ agter f¨ ur kleine Werte von a, das heißt, f¨ ur kleine Skalen in t. Der Leser ist angehalten, sich diesen Sachverhalt durch eine Zeichnung zu veranschaulichen. ¨ Ubungsaufgaben zu Abschnitt 7.1 ¨ Ubungsaufgabe 7.1. Was geschieht, falls die Multiplikation mit dem kom1a (einer anderen Funktion) anstatt mit dem komplexen Konjugierten von Ψ 1a in Gleichung (7.1) erfolgt? plexen Konjugierten von ψ
¨ Ubungsaufgabe 7.2. F¨ uhren Sie diejenigen Modifikationen der Definition der kontinuierlichen Wavelet-Transformation und der Rekonstruktionsformel durch, die erforderlich sind, falls f¨ ur ψ komplexe Werte zugelassen werden. ¨ Ubungsaufgabe 7.3. Beweisen Sie die Formel (7.2) vom Parsevalschen Typ. 2 ¨ Ubungsaufgabe 7.4. Man setze ψ(t) = te−t , u ufe 0 < Cψ < ∞ und ¨berpr¨ 2 −ǫ(t−t0 ) setze f (t) = e . Berechnen Sie nun die Transformation W f (a, b) und untersuchen Sie, wie diese von ǫ > 0 und t0 abh¨angt.
¨ Ubungsaufgabe 7.5. Betrachten Sie nun die Funktion ψ(t) = t/(1 + t2) und zeigen Sie, daß sie ein zul¨ assiges Wavelet ist. Es sei nun f (t) = H(t − t0 ) − H(t − t1 ) wie in Beispiel 7.1. Berechnen Sie W f (a, b) und vergleichen Sie den Wert mit dem Resultat des obigen Beispiels.
7.2 Globale Regularit¨ at Wir beschreiben jetzt, wie sich gewisse Differenzierungseigenschaften in den Eigenschaften der kontinuierlichen Wavelet-Transformation widerspiegeln. Die Formel ∞ Fb W f (a, β) a1/2 ψ(aβ) da/a2 = Cψ fˆ(β) 0
114
7 Die kontinuierliche Wavelet-Transformation
l¨ aßt sich (unter der Voraussetzung 0 < Cψ < ∞) auch dazu verwenden, gewisse Differenzierungseigenschaften von f mit Hilfe von Eigenschaften der Wavelet-Transformierten W f (a, b) der Funktion charakterisieren. Zuerst betrachten wir die R¨ aume H s f¨ ur s ≥ 0. Definition 7.1. Der Raum H s besteht aus allen“ Funktionen f , f¨ ur die ” (1 + | · |2 )s/2 f ∈ L2
mit der folgenden Norm gilt: f H s =
∞
−∞
|(1 + |ω|2 )s/2 f(ω)|2 dω
1/2
⊓ ⊔
Wegen F (Dk f )(ω) = (iω)k F f (ω) ist klar, daß H s aus f mit Dk f ∈ L2 f¨ ur alle k ≤ s besteht, falls s eine gerade positive ganze Zahl ist.2 F¨ ur unsere Zwecke reicht es aus, an Funktionen f zu denken, die unendlich oft differenzierbar sind und außerhalb eines beschr¨ ankten Intervalls verschwinden. Multipliziert man f(β) in Formel (7.1) mit |β|s , dann ergibt sich 1a (β) = a−s Fb W f (a, β) = f (β)a−s ψ
1a (β). = |β|s f (β) |aβ|−s ψ
Durch Quadrieren der absoluten Werte, Integrieren und Anwenden der ParsevalFormel erhalten wir ∞ ∞ |a−s Wf (a, b)|2 da/a2 db = −∞ 0 ∞ ∞ 2 −1 s 2 |ω|−2s |ψ(ω)| dω/ω, |F (| · | F f )(t)| dt = 0
−∞
falls
0<
0
∞
2 |ω|−2s |ψ(ω)| dω/ω < ∞.
Diese Forderung f¨ ur ψ bedeutet im Wesentlichen, daß ψ(ω) = o(|ω|s ) f¨ ur ω → 0 oder ∞ Dk ψ(t) dt = 0 f¨ ur 0 ≤ k ≤ s. −∞
Demnach wird jetzt ein zus¨ atzliche Ausl¨ oschung von ψ gefordert, und zwar in Abh¨ angigkeit von der Anzahl der Ableitungen der zu analysierenden Funktion. 2
Die Definition von H s muß pr¨ aziser formuliert werden, aber wir bemerken lediglich, daß unendlich oft differenzierbare Funktionen f , die außerhalb einer beschr¨ ankten Menge verschwinden, im Falle der u ¨ blichen Definition dicht in H s liegen.
7.3 Lokale Regularit¨ at
115
¨ Mit Hilfe der Argumente von Ubung 7.6 k¨onnen wir nun die Existenz positiver Konstanten A und B schlußfolgern, so daß ∞ ∞ 2 |a−s W f (a, b)|2 da/a2 db ≤ B f 2H s . A f H s ≤ −∞
0
Das bedeutet: Hat man s Ableitungen in L2 , dann entspricht das exakt der Tatsache, daß das Integral ∞ ∞ |a−s W f (a, b)|2 da/a2 db −∞
0
endlich ist. Das kann als Wachstumsbedingung f¨ ur die Transformation W f (a, b) in der Skalenvariablen a aufgefaßt werden. Die Transformation muß klein auf kleinen Skalen sein (kleines a), die exakt mit dem Faktor a−s abgestimmt“ ” sind. ¨ Ubungsaufgaben zu Abschnitt 7.2 ¨ Ubungsaufgabe 7.6. Zeigen Sie, daß es positive Konstanten C1 und C2 gibt, f¨ ur welche C1 f H s ≤ f + F −1 {| · |s F f } ≤ C2 f H s . Verwenden Sie dabei die Ungleichungen max(1, |ω|s ) ≤ (1 + |ω|2 )s/2 ≤ 2s/2 max(1, |ω|s ).
7.3 Lokale Regularit¨ at Im Gegensatz zu der globalen Aussage in Bezug auf die Fourier-Transformation und H s machen wir jetzt eine lokale Regularit¨ atsaussage. Wir setzen voraus, daß f¨ ur ein festes t0 die Beziehung |f (t) − f (t0 )| ≤ C|t − t0 |s gilt, wobei etwa 0 < s < 1. Man bezeichnet das u ¨ blicherweise als lokale Lipschitz-Bedingung und s ist ein Maß f¨ ur die Regularit¨at. Das Adjektiv lokal bezieht sich auf die Bedingung des Gebundenseins an den Punkt t0 , und somit handelt es sich um keine globale oder allgemeine Eigenschaft. Was impliziert diese lokale Regularit¨ atsbedingung der Funktion f f¨ ur die Wavelet-Transformation Wψ f (a, b)? Wir bemerken zuerst, daß die Ausl¨ oschungseigenschaft ψ(t) dt = 0 das oglicht: Einf¨ ugen von f (t0 ) erm¨ ∞ t−b W f (a, b) = (f (t) − f (t0 )) a−1/2 ψ dt. a −∞
116
7 Die kontinuierliche Wavelet-Transformation
Demnach hat man |W f (a, t0 )| ≤ C
∞
−∞
|t − t0 | a
1
= Ca 2 +s und
$ $ $ t − t0 $$ ψ $ $ dt = a
s −1/2 $
$ $ $ t − b $$ |f (t) − f (t0 )|a−1/2 $$ψ $ dt+ a −∞
|W f (a, b)| ≤
+
∞
$ $ $ t − b $$ |f (t0 ) − f (b)|a−1/2 $$ψ $ dt a −∞ ∞
≤ Ca1/2 (as + |b − t0 |s ).
Die lokale Lipschitz-Regularit¨ atsbedingung impliziert also eine Wachstumsbedingung f¨ ur die Wavelet-Transformation. Geht man umgekehrt von einer Wachstumsbedingung f¨ ur die WaveletTransformation aus, dann gibt es das folgende lokale Regularit¨atsresultat. Man beachte, daß auch eine globale Bedingung f¨ ur f gemacht wird und daß ein zus¨ atzlicher logarithmischer Faktor in der Regularit¨atsabsch¨atzung auftritt. Ist beispielsweise f beschr¨ ankt und hat man |W f (a, b)| ≤ Ca1/2 (as + |b − t0 |s ), dann folgt, daß |f (t) − f (t0 )| ≤ C|t − t0 |s log |t − t0 |−1 f¨ ur alle t gilt, die hinreichend nahe bei t0 liegen. Wir lassen die Begr¨ undung weg, die zu diesem Ergebnis f¨ uhrt. ¨ Ubungsaufgaben zu Abschnitt 7.3 ¨ Ubungsaufgabe 7.7. Bestimmen Sie den Exponenten in der Lipschitz-Bedingung f¨ ur die Funktion f (t) = ts f¨ ur t > 0 und f (t) = 0 sonst. Berechnen Sie auch die Transformation unter Verwendung der Haar-Wavelets ψ(t) = t/ |t| f¨ ur 0 < |t| < 1/2 und ψ(t) = 0 sonst.
7.4 Bemerkungen Weiteres Material findet man z.B. in den B¨ uchern von Holschneider [18], Kahane & Lemari´e [21] und Meyer [23]. Der Zusammenhang zwischen den Differenzierbarkeitseigenschaften und den diskreten Wavelet-Darstellungen wird in Kapitel 12 beschrieben.
8 Wavelet-Basen: Beispiele
Bis jetzt haben wir nur wenige Beispiele f¨ ur Wavelet-Basen angegeben. Tats¨ achlich gibt es aber eine große Anzahl verschiedener Wavelet-Basen und bei praktischen Anwendungen ist es nicht immer leicht, die richtige zu w¨ahlen. In diesem Kapitel beschreiben wir die am h¨ aufigsten verwendeten WaveletBasen. Wir versuchen auch, allgemeine Ratschl¨age zu geben, wie man die Wavelet-Basis bei gewissen Anwendungen w¨ ahlt.
8.1 Regularit¨ at und verschwindende Momente Die meisten der in diesem Kapitel diskutierten Wavelets haben einen kompakten Tr¨ ager und die entsprechenden Filter sind FIR-Filter. Wir werden immer die alternierende Flip-Konstruktion verwenden: + π) G(ω) = −e−iω H(ω
und G(ω) = −e−iω H(ω + π),
oder, ausgedr¨ uckt durch die Filterkoeffizienten, h1−k gk = (−1)k
und gk = (−1)k h1−k .
Die Tiefpaß-Filter werden wie folgt faktorisiert: H(ω) =
1 + e−iω 2
N
Q(ω) und H(ω) =
1 + e−iω 2
Ne
Q(ω).
Verschiedene Wavelets unterscheiden sich in der Wahl der trigonometri Die Parameter N und N lassen sich innerhalb jeder schen Polynome Q und Q. Familie variieren und steuern die Anzahl der verschwindenden Momente. Die Wahl dieser Parameter ist wichtig. Wir hatten fr¨ uher gesehen, daß die Anzahl N der verschwindenden Momente f¨ ur das Analyse-Wavelet (duales Wavelet) die Abklingrate der Wavelet-Koeffizienten in dem Fall bestimmt, wenn
120
8 Wavelet-Basen: Beispiele
das Signal glatt ist. Die verschwindenden Momente erzeugen also die Kompressionsf¨ ahigkeit und h¨ angen auch mit der Glattheit des Synthese-Wavelets zusammen. Normalerweise m¨ ochten wir, daß die Synthese-Wavelets u ¨ ber eine gewisse Glattheit verf¨ ugen, die bei Kompressionsanwendungen besonders wichtig sind. Der Grund hierf¨ ur ist, daß die Kompression, grob gesprochen, dadurch erreicht wird, daß man in der Summe wj,k ψj,k (t) f (t) = j,k
diejenigen Glieder wegl¨ aßt, die kleinen“ Waveletkoeffizienten wj,k entspre” chen. Das menschliche Auge tendiert dazu, diese Reduzierung leichter zu entdecken, wenn die Synthese-Wavelets irregul¨ ar sind. Andererseits gilt: Je mehr Regularit¨ at und verschwindende Momente wir haben m¨ochten, desto l¨anger muß der von uns verwendete Filter sein. Das bewirkt, daß die SyntheseWavelets zeitlich ausgebreiteter sind und das kann seinerseits zu den sogenannten ringing“ Artefakten bei Unstetigkeiten und Kanten f¨ uhren. ” Es gibt somit einen Ausgleich zwischen Regularit¨at/verschwindenden Mo der vermenten und Filterl¨ ange. Wir bemerken erneut, daß die Anzahl N schwindenden Momente f¨ ur die Synthese-Wavelets nicht so wichtig ist wie N . Der Grund hierf¨ ur besteht darin, daß wir die Skalarprodukte mit den dualen Wavelets bilden, das heißt, wj,k = f, ψj,k , und nicht mit den SyntheseWavelets. Aus dem gleichen Grund ist die Glattheit der dualen Wavelets, die zusammenh¨ mit N angt, nicht so wichtig. Als Folge hiervon ordnen wir den Analyse-Wavelets u ¨blicherweise mehr verschwindende Momente zu. Bei prak. tischen Anwendungen gibt es keine offensichtliche Wahl f¨ ur N und N
8.2 Orthogonale Basen Die erste Entscheidung, die getroffen werden muß, besteht darin, ob man eine orthogonale Basis verwenden soll oder nicht. Orthogonalit¨at gestattet die Interpretation der Wavelet-Koeffizienten als Energieverteilung. Die Energie eines Signals f l¨ aßt sich ausdr¨ ucken als ∞ |f (t)|2 dt = |wj,k |2 . −∞
j,k
Das Quadrat |wj,k |2 des absoluten Betrages des Wavelet-Koeffizienten kann als Maß des Energieinhaltes von f im Zeitintervall von etwa (2−j k, 2−j (k+1)) und im Frequenzintervall (2j π, 2j+1 π) aufgefaßt werden. Die Summierung dieser Energien u ¨ber die gesamte Zeit-Frequenz-Ebene ergibt die Gesamtenergie. Im Best-Basis-Algorithmus in Kapitel 9 wird der Orthogonalit¨at die Rolle zukommen, die Entropie-Kosten-Funktion additiv zu machen.
8.2 Orthogonale Basen
121
Eine weitere Anwendung, bei der die Orthogonalit¨at auftritt, ist die Unterdr¨ uckung von Rauschen. Das ist der Fall, weil weißes Rauschen in den Sample-Werten dann in weißes Rauschen in den Wavelet-Koeffizienten transformiert wird. Als Folge hiervon wird das Rauschen statistisch gleich u ¨ ber alle Wavelet-Koeffizienten verteilt, w¨ ahrend die Signalenergie (hoffentlich) in einigen großen Wavelet-Koeffizienten konzentriert wird. Das erm¨oglicht es, das Signal unter Beibehaltung großer Koeffizienten zu extrahieren und gleichzeitig das meiste Rauschen zu unterdr¨ ucken, indem man kleine Koeffizienten gleich Null setzt. Wir kommen in Kapitel 10 auf dieses wavelet shrinkage ” denoising“ zur¨ uck. Und schließlich garantiert die Orthogonalit¨at die numerische Stabilit¨ at bei der Wavelet-Transformation, da in diesem Fall die Konditionszahl der Wavelet-Transformation gleich Eins ist. Relative Fehler nehmen also w¨ ahrend der Forward-Wavelet-Transformation und der inversen WaveletTransformation nicht zu. und Q = Q. Es steht noch aus, Orthogonale Basen entsprechen N = N das trigonometrische Polynom Q in der Faktorisierung N 1 + e−iω Q(ω) H(ω) = 2 so zu konstruieren, daß 2
(8.1)
2
|H(ω)| + |H(ω + π)| = 2.
2 ¨ Da |Q(ω)| reellwertig ist, handelt es sich um ein Polynom in cos ω (Ubungsaufgabe 8.1). Wir schreiben es als Polynom in sin2 ω/2 = (1 − cos ω)/2: ω 2 . |Q(ω)| = P sin2 2
Mit y = sin2 ω/2 wird (8.1) dann zu
(8.2)
(1 − y)N P (y) + y N P (1 − y) = 2 f¨ ur
0 ≤ y ≤ 1.
Eine L¨ osung dieser Gleichung ist das Taylorsche Polynom (N − 1)-ten Grades von (1 − y)−N : PN (y) =
N −1 k=0
N −1+k k
y k = (1 − y)−N + O(y N ).
Der Produktfilter H(z)H(z −1 ), den man aus PN erh¨alt, wird u ¨ blicherweise als Daubechies-2N-Produktfilter bezeichnet. Um festzustellen, daß PN (y) eine L¨ osung ist, betrachten wir die Beziehung (1 − y)N PN (y) + y N PN (1 − y) = 2 + (1 − y)N O(y N ) + y N O((1 − y)N ). Man betrachte den Term (1 − y)N O(y N ) + y N O((1 − y)N ). Dieser ist ein Polynom von h¨ ochstens (2N − 1)-tem Grad. Andererseits hat dieser Ausdruck
122
8 Wavelet-Basen: Beispiele
sowohl bei y = 0 als auch bei y = 1 Nullstellen der Ordnung N . Deswegen muß der Term identisch 0 sein und somit ist PN eine L¨osung von (8.2). Man kann zeigen, daß jede andere L¨ osung die Form (8.3)
P (y) = PN (y) + y N R(1 − 2y)
haben muß, wobei R ein ungerades Polynom ist, so daß wir P (y) ≥ 0 f¨ ur 0 ≤ y ≤ 1 erhalten. Nach Wahl eines geeigneten R k¨ onnen wir das Polynom S(z) = Q(z)Q(z −1 ) m¨ uhelos berechnen. Hieraus k¨ onnen wir Q durch Spektralfaktorisierung extrahieren. ¨ Wir geben hier einen kurzen Uberblick u ¨ber den Spektralfaktorisierungsalgorithmus. Die Nullstellen des Polynoms S(z) treten in Paaren zi und zi−1 auf. Eine dieser Nullstellen geh¨ ort zu Q(z) und die andere zu Q(z −1 ). Demzufolge tritt der Faktor (z − zi ) in dem einen Polynom auf und (z − zi−1 ) in dem anderen. Die Spektralfaktorisierung ist nicht eindeutig, da es zwei Auswahlm¨ oglichkeiten f¨ ur jedes solche Paar gibt. Wir werden sehen, daß verschiedene Auswahlen zu ganz verschiedenen Wavelets f¨ uhren k¨onnen. Orthogonale Daubechies-Wavelets Bei der orthogonalen Daubechies-Wavelet-Familie wird der Tiefpaß-Filter konstruiert, indem man zuerst R = 0 in (8.3) w¨ahlt. Bei der Spektralfaktorisierung gehen die Nullstellen innerhalb der Einheitskreises immer in das Polynom Q(z) ein. Das minimiert die Phasen¨ anderung von Q(z), wenn z auf dem Einheitskreis l¨ auft und deswegen werden diese Filter Minimalphasenfilter genannt. Die Filterl¨ ange ist 2N und das Mother-Wavelet sowie die Skalierungsfunktion sind gleich 0 außerhalb von [0, 2N − 1]. Die Glattheit erh¨oht sich mit N und die Anzahl der stetigen Ableitungen w¨achst asymptotisch wie 0, 2075N . Ein Nachteil der Daubechies-Wavelets besteht darin, daß sie sehr unsymmetrisch sind – mit Ausnahme des Haar-Wavelets, das N = 1 entspricht. Man erkennt das anhand der Abb. 8.1 - 8.2, in denen wir DaubechiesWavelets f¨ ur N = 2, . . . , 9 graphisch dargestellt haben. Symmlets Eine M¨ oglichkeit, orthogonale Wavelets mit weniger Asymmetrie zu erzeugen, besteht in der Durchf¨ uhrung der Spektralfaktorisierung, ohne die Minimalphaseneigenschaft zu fordern. Anstatt immer nur Nullstellen innerhalb des Einheitskreises zu w¨ ahlen, k¨ onnen wir die Nullstellen so w¨ahlen, daß die Phase so linear wie m¨ oglich ist. Die entsprechende Familie der orthogonalen Wavelets werden u ¨ blicherweise als kleinste asymmetrische Wavelets oder Symmlets bezeichnet. Diese sind deutlich symmetrischer als Daubechies-Wavelets, wie aus Abb. 8.3 ersichtlich ist. Der Preis, den wir zu zahlen haben, besteht darin, daß das Symmlet mit N verschwindenden Momenten weniger regul¨ar ist als das entsprechende Daubechies-Wavelet.
8.2 Orthogonale Basen 1.5
2
1
1
0.5
0
0
1
0.5
1
0
1
2
3
4
2
1.5
2
1
1
0.5
0
0
1
0.5
0
2
4
6
1.5
2
2
1
2
0
1
2
0
123
3
2
4
1.5 1
1 0.5 0.5
0 0.5
0 1 0.5
2
0
2
4
1.5
6
1.5
4
2
0
2
4
1.5 1
1 0.5 0.5
0 0.5
0 1 0.5
2
0
2
4
ϕ
6
8
1.5
4
2
0
2
4
6
ψ
Abb. 8.1. Orthogonale Daubechies-Wavelets und Skalierungsfunktionen f¨ ur N = 2, 3, 4, 5
124
8 Wavelet-Basen: Beispiele 1.5
1.5 1
1 0.5 0.5
0 0.5
0 1 0.5
0
5
1.5
10
1.5
5
0
5
1.5 1
1 0.5 0.5
0 0.5
0 1 0.5
0
5
1.5
10
1.5
5
0
5
1.5 1
1 0.5 0.5
0 0.5
0 1 0.5
0
5
10
15
1.5
1.5
5
0
5
10
1.5 1
1 0.5 0.5
0 0.5
0 1 0.5
0
5
10
ϕ
15
1.5
5
0
5
10
ψ
Abb. 8.2. Orthogonale Daubechies-Wavelets und Skalierungsfunktionen f¨ ur N = 6, 7, 8, 9
8.2 Orthogonale Basen 1.5
2
1
1
0.5
0
0
1
0.5
2
0
2
4
6
8
2
1.5
2
1
1
0.5
0
0
1
0.5
0
5
5
2
10
1.5
0
5
125
5
0
5
1.5 1
1 0.5 0.5
0 0.5
0 1 0.5
0
5
10
15
1.5
1.5
5
0
5
1.5 1
1 0.5 0.5
0 0.5
0 1 0.5
0
5
10
ϕ
15
20
1.5 10
5
0
5
10
ψ
Abb. 8.3. Symmlets und ihre Skalierungsfunktionen f¨ ur N = 2, 3, 4 und 5
126
8 Wavelet-Basen: Beispiele
Coiflets Eine weitere Familie von orthogonalen Wavelets wurde konstruiert, um auch den Skalierungsfunktionen verschwindende Momente zu verleihen: ∞ tn ϕ(t) dt = 0, n = 1, . . . , N − 1. −∞
Das kann eine n¨ utzliche Eigenschaft sein, denn mit Hilfe der Taylorentwicklung ergibt sich f, ϕJ,k = 2J/2 f (2−J k) + O(2−Jp ) in Bereichen, in denen f insgesamt p stetige Ableitungen hat. F¨ ur glatte Signale lassen sich die Feinskalen-Skalierungskoeffizienten demnach gut durch die Sample-Werte approximieren und man kann auf das Pr¨ a-Filtern verzichten. Diese Wavelets werden als Coiflets bezeichnet. Sie entsprechen einer speziellen Auswahl des Polynoms R in (8.3). Ihre Tr¨ agerbreite betr¨ agt 3N − 1 und die Filterl¨ange ist 3N . In Abb. 8.4 haben wir die ersten vier Coiflets zusammen mit ihren Skalierungsfunktionen dargestellt. Wir sehen, daß die Coiflets sogar noch symmetrischer sind als die Symmlets. Man erreicht das nat¨ urlich zum Preis einer gr¨oßeren Filterl¨ ange. Der Kaskaden-Algorithmus Bevor wir zu biorthogonalen Wavelets u ¨ bergehen, beschreiben wir, wie wir auf die Darstellungen der Abb. 8.1-8.4 gekommen sind. Die Ausf¨ uhrung erfolgte unter Verwendung des Kaskaden-Algorithmus. Dieser beruht auf der Tatsache, daß f¨ ur eine stetige Funktion f die Beziehung 2j/2 f, ϕj,k → f (t0 ) f¨ ur j → ∞ ¨ 8.4 gilt, falls t0 = 2−j k festgehalten wird. Diese Beziehung wird in Ubung skizziert. M¨ ochten wir also die Sample-Werte einer (stetigen) Skalierungsfunktion onnen wir ihre Skalierungskoeffizienten in irgendeiner ϕj0 ,l berechnen, dann k¨ Feinskala J > j0 berechnen. Algorithmus. (Kaskaden-Algorithmus) 1. Man starte mit den Skalierungskoeffizienten ϕj0 ,l in der Skala j0 , die folgendermaßen gegeben ist: sj0 ,k = ϕj0 ,l , ϕj0 ,k = δk,l , wj0 ,k = ϕj0 ,l , ψj0 ,k = 0. 2. Man berechne die Skalierungskoeffizienten sj,k = ϕj0 ,l , ϕj,k und die Wavelet-Koeffizienten wj,k = ϕj0 ,l , ψj,k mit der schnellen inversen Wavelet-Transformation (Fast Inverse Wavelet Transform). 3. Man stoppe in der feinsten Skala J und verwende 2J/2 sJ,k als N¨aherungswerte von ϕj0 ,l (2−J k). ⊓ ⊔
8.2 Orthogonale Basen 1.5
2
1
1
0.5
0
0
1
0.5
2
0
2
4
6
2
1.5
2
1
1
0.5
0
0
1
0.5
0
5
10
1.5
4
2
2
0
5
2
0
127
4
5
1.5 1
1 0.5 0.5
0 0.5
0 1 0.5
0
5
10
15
1.5
1.5 10
5
0
5
10
1.5 1
1 0.5 0.5
0 0.5
0 1 0.5
0
5
10
ϕ
15
20
1.5
10
5
0
5
10
ψ
Abb. 8.4. Die ersten vier Coiflets mit Skalierungsfunktionen f¨ ur 2, 4, 6 und 8 verschwindende Momente
128
8 Wavelet-Basen: Beispiele
¨ Ubungsaufgaben zu Abschnitt 8.2 ¨ Ubungsaufgabe 8.1. Zeigen Sie, daß |Q(ω)|2 f¨ ur reelle Filter ein Polynom in cos ω ist. Hinweis: Es handelt sich um ein trigonometrisches Polynom, 2
|Q(ω)| =
K
ck eikω =
k=−K
K
ck cos (kω) + i
k=−K
K
ck sin (kω).
k=−K
Die Koeffizienten ck sind reell (warum?) und deswegen hat man 0 = Im |Q(ω)|2 =
K
ck sin (kω).
k=−K
Beweisen Sie, daß jedes cos (kω) ein Polynom in cos ω ist. ¨ Ubungsaufgabe 8.2. Zeigen Sie, daß (8.1) durch die Substitutionen ω ω 2 und y = sin2 |Q(ω)| = P sin2 2 2
in (8.2) transformiert wird.
¨ Ubungsaufgabe 8.3. Zeigen Sie, daß alle L¨ osungen von (8.2) von der Form (8.3) sein m¨ ussen. Hinweis: Man setze voraus, daß P (y) eine L¨osung ist. Beweisen Sie, daß dann (1 − y)N [P (y) − PN (y)] + y N [P (1 − y) − PN (1 − y)] = 0 gelten muß und daß das seinerseits die Beziehung P (y) − PN (y) = y N P(y)
f¨ ur ein Polynom P impliziert. Zeigen Sie außerdem, daß P die Beziehung P(y) + P (1 − y) = 0
erf¨ ullt. Schlußfolgern Sie, daß P(y) anti-symmetrisch in Bezug auf y = 1/2 ist und sich deswegen in der Form P (y) = R(1 − 2y) f¨ ur ein ungerades Polynom R schreiben l¨ aßt.
¨ Ubungsaufgabe 8.4. Zeigen Sie: Wird t0 = 2−j k konstant gehalten und ist f stetig, dann gilt 2j/2 f, ϕj,k → f (t0 ) f¨ ur j → ∞. Hinweis: Man verifiziere, daß ∞ j/2 j/2 2 f, ϕj,k = 2 f (t)ϕj,k (t) dt −∞ ∞ ∞ [f (t) − f (t0 )] ϕj,k (t) dt ϕj,k (t) dt + 2j/2 = 2j/2 f (t0 ) −∞ −∞ ∞ f (t0 + 2−j k) − f (t0 ) ϕ(t) dt. = f (t0 ) + −∞
8.3 Biorthogonale Basen
129
Da f stetig ist, hat man f (t0 + 2−j k) − f (t0 ) → 0 f¨ ur j → ∞ und f¨ ur alle t. Deswegen geht auch das letzte Integral gegen 0. (Die letztgenannte Aussage wird durch den sogenannten dominierten Konvergenzsatz gerechtfertigt, aber wir meinen, daß die Leser diese Aussage auch so akzeptieren.)
8.3 Biorthogonale Basen Wie oben erw¨ ahnt, ist es unm¨ oglich, gleichzeitig Symmetrie und Orthogonalit¨ at zu haben. Verwendet man jedoch biorthogonale Wavelets, dann ist Symmetrie m¨ oglich. Bei der Bildverarbeitung und insbesondere bei der Bildkompression ist Symmetrie aus dem gleichen Grund wichtig wie Glattheit: l¨ aßt man ein Glied der Summe wj,k ψj,k (t) j,k
weg, dann erkennt das menschliche Auge leichter, ob die Synthese-Wavelets ψj,k asymmetrisch sind. Symmetrie ist auch ¨ aquivalent zu der Aussage, daß Filter eine lineare Phase haben (vgl. Abschnitt 2.4). Im Allgemeinen haben wir mehr Flexibilit¨ at im biorthogonalen Fall, denn anstelle eines Filters m¨ ussen wir zwei Filter konstruieren. Eine allgemeine Richtlinie k¨ onnte deswegen darin bestehen, immer biorthogonale Basen zu verwenden – es sei denn, Orthogonalit¨ at ist f¨ ur die gerade vorliegende Anwendung wichtig. Die Filterkonstruktion ist im biorthogonalen Fall auch einfacher. Es gibt verschiedene M¨ oglichkeiten, Filter zu konstruieren. Eine Methode besteht darin, einen beliebigen Synthese-Tiefpaß-Filter H(z) zu w¨ahlen. F¨ ur den Analysis-Tiefpaß-Filter haben wir dann (8.4)
−1 −1 ) + H(−z)H(−z )=1 H(z)H(z
nach H(z) aufzul¨ osen. Man kann die Existenz von L¨osungen zeigen, falls z.B. H(z) symmetrisch ist und H(z) und H(−z) keine gemeinsamen Nullstellen haben. Man kann diese L¨ osungen finden, indem man lineare Gleichungssyste me nach den Koeffizienten von H(z) aufl¨ ost. Eine weitere Methode besteht darin, die Spektralfaktorisierung auf verschiedene Produktfilter anzuwenden. M¨ ochten wir symmetrische Filter kon symmetrisch sein. Eine detailstruieren, dann m¨ ussen sowohl Q als auch Q gerade sein muß, und daß wir lierte Analyse zeigt, daß N + N Q(ω) = q(cos ω) und Q(ω) = q(cos ω)
f¨ ur gewisse Polynome q und q schreiben k¨ onnen. Das ist der Fall, wenn Q und beide von ungerader L¨ Q ange sind. Sie k¨ onnen auch beide von gerader L¨ange sein und dann m¨ ussen sie einen Faktor e−iω/2 enthalten. In jedem Fall gilt: )/2 und das Polynom P durch Definieren wir L = (N + N
130
8 Wavelet-Basen: Beispiele
ω = q(cos ω) q (cos ω), P sin2 2
dann wird Gleichung (8.4) in folgende Gleichung transformiert: (1 − y)L P (y) + y L P (1 − y) = 2. Die L¨ osungen dieser Gleichung sind aus dem vorhergehenden Abschnitt bekannt. Nach Wahl einer L¨ osung, das heißt, nach Wahl von R in (8.3), werden mit Hilfe der Spektralfaktorisierung berechnet. Q und Q Eine dritte Konstruktionsmethode f¨ ur biorthogonale Filter ist die Verwendung des Lifting, wie es in Kapitel 6 beschrieben wurde. Biorthogonale Spline-Wavelets Das ist eine Familie von biorthogonalen Wavelet-Basen, wobei die Skalierungsfunktion eine B-Spline-Funktion der Ordnung N ist, das heißt, eine N -malige Faltung der Haarschen Skalierungsfunktion mit sich selbst. Der entsprechende Analyse-Tiefpaß-Filter ist N 1 + e−iω . H(ω) = 2 Der Synthese-Tiefpaß-Filter ist H(ω) =
1 + e−iω 2
Ne L−1 k=0
L−1+k k
sin2
ω k . 2
Die Tiefpaß-Filter beruhen auf einer speziellen Faktorisierung des Daube chies-Produktfilters (R = 0), n¨ amlich Q(z) ≡ 1 und Q(z) = PL (z). Diese Spline-Wavelets haben zus¨ atzlich zur Symmetrie viele attraktive Eigenschaften. Die Filterkoeffizienten sind dyadisch rational, das heißt, sie haben die Form 2j k mit j, k ∈ Z. Das bedeutet, daß sie sich durch einen Computer exakt darstellen lassen. Dar¨ uber hinaus wird die Multiplikation mit diesen Koeffizienten eine sehr schnelle Operation, was sich bei ComputerImplementierungen als vorteilhaft erweist. Eine weitere angenehme Eigenschaft besteht darin, daß wir analytische Ausdr¨ ucke f¨ ur ϕ und ψ haben – das ist etwas, das im Allgemeinen nicht zur Verf¨ ugung steht. Ein wesentlicher Nachteil ist jedoch der große Unterschied zwischen den Filterl¨ angen der Tiefpaß-Filter. Zu diesem Unterschied kommt es, weil wir das stecken. Dieser Faktor ganze Polynom PL in den Analyse-Tiefpaß-Filter H(ω) zerst¨ ort auch die Regularit¨ at der dualen Funktionen. Die vom Synthese-Filter abgeleitete primale Skalierungsfunktion hat N −2 stetige Ableitungen und das ist auch beim Wavelet der Fall. Wie aus Abb. (8.5)-(8.7) ersichtlich, weisen = N viel weniger die duale Skalierungsfunktion und das duale Wavelet f¨ ur N 2 uckzuf¨ uhren ist, der in Regularit¨ at auf, was auf den Faktor PL (sin ω/2) zur¨ H(ω) auftritt.
8.3 Biorthogonale Basen
131
ϕ 1.5 1 0.5 0 0.5
1
0
1
2
2
1.5
2
1
1
1
0
0.5
0
1
0
1
2
2
0
2
0.5
2
0
2
2
2
1.5
2
1
1
1
0
0.5
0
1
0
1
2
2
0
2
0.5
2
0
2
2
2
1.5
2
1
1
1
0
0.5
0
1
0
1
2
2
0
2
0.5
2
ψ
0
ϕ e
2
2
2
0
2
2
0
2
2
0
2
ψe
e = 1, 2 und 3 Abb. 8.5. Biorthogonale Spline-Wavelets mit N = 1 und N
Weitere biorthogonale Wavelets Wir beschreiben hier weitere biorthogonale Wavelets, die auf dem DaubechiesProduktfilter beruhen. Um f¨ ur die Filter ¨ ahnlichgeartete L¨ angen zu erreichen, wenden wir erneut die Spektralfaktorisierungsmethode an, um PL (z) in Q(z) und Q(z) zu faktorisieren. Zur Aufrechterhaltung der Symmetrie fassen wir stets die Nullstellen ussen immer zusammen auftreten, zi und zi−1 zusammen. Auch zi und zi m¨ damit wir reellwertige Filterkoeffizienten haben. Das beschr¨ankt die Anzahl gibt es immer noch der m¨ oglichen Faktorisierungen, aber f¨ ur feste N und N
132
8 Wavelet-Basen: Beispiele ϕ 1.5 1 0.5 0 0.5
2
0
2
2
6 4
1
4 2
2
0
0
0
1
2
2
0
2
2 1
2 2
0
4
2
3
3
2
2
2
0
2
1 1 0
0 1
0 2
0
2
4
2
1
1 4
2
0
2
4
2
2
2
0
2
4
3 2
1
1
1
0
2
0
0
1
1 2
0
2
4
2
1
4
2
0
2
4
2
2
4
2
0
2
4
4
2
0
2
4
3 2
1
1
1
0
2
0
0
1
1 2
0
2
ψ
4
1
4
2
0
ϕ e
2
4
2
ψe
e = 2, 4, 6 und 8 Abb. 8.6. Biorthogonale Spline-Wavelets mit N = 2 und N
8.3 Biorthogonale Basen
133
ϕ 1 0.5 0 0.5
2
0
2
4
4
2
2
1 0
0
0
2
1
2 2
0
2
4
2
0
2
4
2
0
2
2
2
1
4
1 1
0
0 1
0 1
2 2
0
2
4
1
4
2
0
2
4
2
0
2
4
2
0
2
4
2
0
2
4
2 2
1
1
1 0
0 0
1
1
2 2
0
2
4
1
4
2
0
2
4
2 2
1
1
1 0
0 0
1
1
2 2
0
2
ψ
4
1
4
2
0
ϕ e
2
4
ψe
e = 3, 5, 7 und 9 Abb. 8.7. Biorthogonale Spline-Wavelets mit N = 3 und N
134
8 Wavelet-Basen: Beispiele
verschiedene M¨ oglichkeiten. Ein Nachteil dieser Wavelets besteht darin, daß die Filterkoeffizienten nicht mehr dyadisch rational oder nicht einmal rational sind. Wir haben die Skalierungsfunktionen und die Wavelets f¨ ur einige der h¨aufigsten Filter in Abb. 8.8-8.9 dargestellt. Das erste Filterpaar sind die biorthogonalen Filter, die beim FBI-Fingerabdruck-Standard verwendet werden. Man konstruiert diese mit Hilfe einer speziellen Faktorisierung des Daubechies-8-Produktfilters. Sowohl das primale als auch das duale Wavelet hat 4 verschwindende Momente. Die Filter haben die L¨ angen 7 und 9, und das ist der Grund f¨ ur die Schreibweise 9/7 (die erste Zahl ist die L¨ ange des dualen Tiefpaß-Filters). Das zweite Paar 6/10 ergibt sich, indem man ein verschwindendes Moment (eine Nullstelle bei z = −1) vom primalen zum dualen Wavelet bewegt und auch einige weitere Nullstellen miteinander vertauscht. Die primale Skalierungsfunktion und das primale Wavelet werden etwas glatter. Dieses Filterpaar erweist sich auch f¨ ur die Bildkompression als sehr gut. Die beiden letzten Paare 9/11 basieren auf zwei verschiedenen Faktorisierungen des Daubechies-10-Produktfilters.
Fast orthogonale Systeme Eine weitere Konstruktion ist auf die Beobachtung zur¨ uckzuf¨ uhren, daß Coiflets ziemlich nahe dran“ sind, symmetrisch zu sein. Dieser Umstand legt die ” M¨ oglichkeit nahe, symmetrische biorthogonale Wavelets zu konstruieren, die den Coiflets nahestehen und somit auch fast die Eigenschaft haben, orthogonal zu sein. Eine M¨ oglichkeit besteht grob gesprochen darin, H(ω) als rationale Approximation des Coiflet-Tiefpaß-Filters zu w¨ahlen. Man findet dann den durch L¨ dualen Filter H osen von linearen Gleichungen. Das liefert uns eine Familie von biorthogonalen, symmetrischen und fast orthogonalen Wavelets mit rationalen Koeffizienten.
8.4 Wavelets ohne kompakten Tr¨ ager Wir schließen dieses Kapitel mit einer kurzen Auflistung einiger weiterer Wavelet-Basen, bei denen nicht alle Wavelets und Skalierungsfunktionen einen kompakten Tr¨ ager haben. Sie sind vielleicht f¨ ur Anwendungen nicht so interessant, aber wir geben sie aus historischen Gr¨ unden und wegen ihrer interessanten theoretischen Eigenschaften.
8.4 Wavelets ohne kompakten Tr¨ ager Scaling function
Wavelet
1.5
2 1.5
1 1 0.5
0.5 0
0 0.5 0.5
4
2
0
2
4
1
4
2
Dual scaling function
0
2
4
Dual wavelet
1.5
2 1.5
1 1 0.5
0.5 0
0 0.5 0.5
5
0
5
1
4
2
Scaling function 1
1.5
0.8
1
0.6
0.5
0.4
0
0.2
0.5
0
1
0.2
2
0
0
2
4
2
4
Wavelet
2
4
1.5
4
2
Dual scaling function
0
Dual wavelet
1.5
2
1
1
0.5
0
1
0
2
0
2
4
2
4
2
0
2
Abb. 8.8. Das biorthogonale Filterpaar 6/10 und FBI 9/7
4
135
136
8 Wavelet-Basen: Beispiele Scaling function
Wavelet 2.5 2
1.5
1.5 1
1 0.5
0.5
0
0
0.5
0.5
1.5
1 5
0
5
4
2
Dual scaling function
0
2
4
Dual wavelet 1.5
1.2 1
1
0.8 0.5
0.6 0.4
0
0.2 0.5
0 0.2 5
0
5
1
4
2
Scaling function
0
2
4
2
4
Wavelet
0.8 1 0.6 0.4
0.5
0.2
0
0 0.5 0.2
5
0
5
4
2
Dual scaling function
0
Dual wavelet 6
6
4
4
2 2 0 0
2
2 4
4 5
0
5
6
4
2
0
2
4
Abb. 8.9. Skalierungsfunktionen und Wavelets f¨ ur das biorthogonale Filterpaar 9/11
8.4 Wavelets ohne kompakten Tr¨ ager
137
Meyer-Wavelets Die Meyer-Wavelets werden explizit wie folgt beschrieben: die Fourier-Transformierte des Wavelets wird definiert als ⎧ 1 −iω/2 4π ⎪ sin π2 ν(3 |ω| − 1) falls 2π ⎨ 2π e 3 < |ω| ≤ 3 , 1 −iω/2 8π ψ(ω) = 2π e cos π2 ν( 32 |ω| − 1) falls 4π 3 < |ω| ≤ 3 , ⎪ ⎩ 0 andernfalls. Hier ist ν eine glatte Funktion, derart daß 0 falls x ≤ 0, ν(x) = 1 falls x ≥ 1
und ν(x)+ν(1−x) = 1. Diese Bedingungen f¨ ur ν reichen aus, um zu gew¨ahrleisten, daß {ψj,k } eine orthogonale Basis ist. Mit Hilfe der Multi-Skalen-Analyse ist ein Beweis dieser Aussage m¨ oglich, indem man die Skalierungsfunktion identifiziert: ⎧ 1 ⎪ falls |ω| ≤ 2π ⎨ 2π 3 , 1 2π π ϕ(ω) = 2π cos 2 ν(3 |ω| − 1) falls 3 < |ω| ≤ 4π 3 , ⎪ ⎩ 0 andernfalls.
Die Meyer-Wavelets haben viele interessante Eigenschaften. Da ψ gleich 0 in einem Intervall um den Koordinatenursprung ist, haben wir ψ(n) (0) = 0 f¨ ur alle n ∈ Z. Deswegen haben die Meyer-Wavelets unendlich viele verschwindende Momente. Sowohl die Wavelets als auch die Skalierungsfunktionen sind symmetrisch. Die Wavelets und die Skalierungsfunktionen sind unendlich oft differenzierbar (C ∞ ), da sie einen kompakten Tr¨ager im Frequenzbereich haben. Dennoch k¨ onnen sie keinen kompakten Tr¨ager haben, aber sie klingen schnell ab. Die Abklingrate wird durch die Glattheit von ν bestimmt. Battle-Lemari´ e-Wavelets Die Konstruktion der orthogonalen Battle-Lemari´e-Familie beginnt mit den B-Spline-Skalierungsfunktionen. Diese sind nicht orthogonal zu ihren ganzzahligen Translaten, denn sie sind positiv und u ¨ berlappen. Man rufe sich die Orthogonalit¨ atsbedingung f¨ ur die Skalierungsfunktion aus Abschnitt 4.4 in Erinnerung: 2 |ϕ(ω + 2πl)| = 1. (8.5) l
Stattdessen erf¨ ullen die B-Spline-Skalierungsfunktionen die Ungleichungen 2 A≤ |ϕ(ω + 2πl)| ≤ B l
138
8 Wavelet-Basen: Beispiele
f¨ ur alle ω, wobei A und B gewisse positive Konstanten sind. Hierbei handelt es sich um die Bedingung, daß {ϕ(t − k)} eine in den Fourier-Bereich transformierte Riesz-Basis ist. Jetzt ist es m¨ oglich, die Battle-Lemari´e-Skalierungsfunktion zu definieren: ϕ # (ω) = 2
ϕ(ω)
2
.
+ 2πl)| l |ϕ(ω
Diese Skalierungsfunktion erf¨ ullt (8.5) und erzeugt deswegen eine orthogonale Multi-Skalen-Analyse. Das Wavelet wird durch die alternierende FlipKonstruktion definiert. Man kann zeigen, daß diese orthogonalisierte“ Spline-Skalierungsfunktion ” die gleichen R¨ aume Vj aufspannt wie die urspr¨ ungliche Spline-Skalierungsfunktion. Jedoch hat sie keinen kompakten Tr¨ager mehr und dasselbe gilt auch f¨ ur das Wavelet. Sie klingen aber beide exponentiell ab und sind symmetrisch. In Abb. 8.10 haben wir die Battle-Lemari´e-Skalierungsfunktion und das Wavelet entsprechend den st¨ uckweise linearen Splines dargestellt. Man beachte, daß beide st¨ uckweise linear sind und daß das Abklingen tats¨achlich sehr schnell erfolgt. 1.5
2 1.5
1
1 0.5
0.5 0 0.5
0
1 0.5
6
4
2
0
2
4
6
1.5
6
4
2
0
2
4
6
Abb. 8.10. Die st¨ uckweise lineare Battle-Lemari´e-Skalierungsfunktion und das Battle-Lemari´e-Wavelet
Semiorthogonale Chui-Spline-Wavelets Die semiorthogonalen Basen sind ein Spezialfall der biorthogonalen Basen, *j fordern. Wir haben immer noch zwei Skawobei wir Vj = * Vj and Wj = W aber diese m¨ ussen nun die lierungsfunktionen ϕ, ϕ und zwei Wavelets ψ, ψ, gleichen R¨ aume Vj und Wj erzeugen. Zur Orthogonalit¨at ben¨otigen wir die Die u zus¨ atzliche Bedingung ϕ = ϕ and ψ = ψ. ¨ bliche Biorthogonalit¨atsbedingung impliziert unmittelbar, daß Vj ⊥ Wj f¨ ur jedes j gilt. In jeder Skala m¨ ussen dann alle Skalierungsfunktionen orthogonal zu allen Wavelets sein.
8.5 Bemerkungen
139
Außerdem liegen die Wavelets ψ0,k in allen Approximationsr¨aumen Vj mit j > 0. Sie m¨ ussen also orthogonal zu allen Wavelets mit j > 0 sein. Wir k¨ onnen demnach schließen, daß Wavelets in verschiedenen Skalen immer orthogonal sind. In einer festen Skala j sind die Wavelets ψj,k nicht orthogonal zueinander, sondern zu den dualen Wavelets ψj,k : ψj,k , ψj,l = δk,l .
Die semiorthogonalen Spline-Wavelets von Chui & Wang verwenden BSplines der Ordnung N als Skalierungsfunktionen. Die Wavelets werden Spline-Funktionen mit der Tr¨ agerbreite [0, 2N − 1]. Die dualen Skalierungsfunktionen und Wavelets sind ebenfalls Splines, aber ohne kompakten Tr¨ager. Sie klingen dennoch sehr schnell ab. Alle Skalierungsfunktionen und Wavelets sind symmetrisch und alle Filterkoeffizienten sind rational. Es gibt auch analytische Ausdr¨ ucke f¨ ur alle Skalierungsfunktionen und Wavelets.
8.5 Bemerkungen Eine der zuerst auftretenden Familien von Wavelets waren die Meyer-Wavelets, die von Yves Meyer 1985 konstruiert wurden. Das war vor dem Zeitpunkt, an dem der Zusammenhang zwischen Wavelets und Filterb¨anken entdeckt wurde und somit stand der Begriff der Multi-Skalen-Analyse noch nicht zur Verf¨ ugung. Stattdessen definierte Meyer seine Wavelets durch explizite Konstruktionen im Fourier-Bereich. Ingrid Daubechies konstruierte 1988 die nach ihr benannte Familie von orthogonalen Wavelets. Das war die erste Konstruktion im Rahmen der MSA und der Filterb¨ anke. Kurz danach erfolgte die Konstruktion der Symmlets, Coiflets (die 1989 von Ronald Coifman entdeckt wurden, daher der Name), und sp¨ ater auch die Konstruktion verschiedener biorthogonaler Basen. Weitere Einzelheiten zur Konstruktion verschiedener Wavelet-Basen findet man in Daubechies’ Buch [11], das auch Tabellen mit Filterkoeffizienten enth¨ alt. Filterkoeffizienten findet man auch in WaveLab.
9 Adaptive Basen
In diesem Kapitel beschreiben wir zwei Konstruktionen, die eine Anpassung der Analyse an das gerade vorliegende Signal gestatten. Bei diesen Konstruktionen handelt es sich um Wavelet-Pakete und um lokale trigonometrische Basen. In gewissem Sinne sind die beiden Konstruktionen dual zueinander: Wavelet-Pakete sorgen f¨ ur Flexibilit¨ at bei der Frequenzbandzerlegung, w¨ ahrend lokale trigonometrische Basen, die eng mit der gefensterten FourierAnalyse zusammenh¨ angen, eine Anpassung der Zeitintervallzerlegung gestatten. Wavelet-Pakete und lokale trigonometrische Basen sind Spezialf¨alle des allgemeineren Konzepts der Zeit-Frequenz-Zerlegungen, die wir zuerst kurz diskutieren.
9.1 Zeit-Frequenz-Zerlegungen Eine Zeit-Frequenz-Zerlegung eines Signals f ist eine Darstellung f (t) = ck bk (t), k
wobei jede Basisfunktion bk sowohl im Zeitbereich als auch im Frequenzbereich gut lokalisiert ist. Mit dem Letztgenannten meinen wir, daß sowohl f (t) als auch f(ω) f¨ ur |t| , |ω| → ∞ schnell abklingen. Derartige Basisfunktionen werden mitunter als Zeit-Frequenz-Atome bezeichnet. Die Wavelet-Zerlegung f (t) = f, ψj,k ψj,k (t) j,k
ist ein Beispiel f¨ ur eine Zeit-Frequenz-Zerlegung. Wir nehmen an, daß das Mother-Wavelet ψ seine Energie haupts¨ achlich im Zeitintervall (0, 1) und im Frequenzband (π, 2π) hat. Hiermit meinen wir, daß
142
9 Adaptive Basen
1 0
2
|ψ(t)| dt
und
2π
π
2 |ψ(ω)| dω
beide fast die Gesamtenergie des Signals haben. (Vgl. Ungleichung 1.1 in Kapitel 1, die der gleichzeitigen Lokalisierung im Zeitbereich und im Frequenzbereich Grenzen setzt.) Durch Skalieren konzentrieren dann die Basisfunktionen ψj,k (t) ihre Energie im Wesentlichen auf das Zeitintervall (2−j k, 2−j (k + 1)) und auf das Frequenzintervall (2j π, 2j+1 π). Wir ordnen ψj,k dem Rechteck (2−j k, 2−j (k + 1)) × (2j π, 2j+1 π) in der Zeit-Frequenz-Ebene zu (vgl. Abb. 9.1). Diese Rechtecke werden manchmal auch als Heisenberg-Boxen bezeichnet. ω
6
2j+1 π 2j π
- t −j
2
k
−j
2
(k + 1)
Abb. 9.1. Die Heisenberg-Box f¨ ur ψj,k
Die Heisenberg-Boxen f¨ ur die Wavelets ψj,k liefern eine Parkettierung der Zeit-Frequenz-Ebene, so wie in Abb. (9.2) dargestellt. Das am niedrigsten gelegene Rechteck entspricht der Skalierungsfunktion ϕj0 ,0 in der gr¨obsten Skala. Haben wir eine orthonormale Wavelet-Basis, dann l¨aßt sich die Energie ω π6 ψ−1,0 ψ−1,1 ψ−1,2 ψ−1,3
ψ−2,0
ψ−2,1 ψ−3,0 ϕ−3,0
- t
8
Abb. 9.2. Parkettierung der Zeit-Frequenz-Ebene f¨ ur eine Wavelet-Basis
9.1 Zeit-Frequenz-Zerlegungen
143
eines Signals folgendermaßen durch die Wavelet-Koeffizienten wj,k = f, ψj,k ausdr¨ ucken: 2 2 f = |wj,k | . j,k
Demnach laßt sich das Quadrat des absoluten Betrages der Wavelet-Koeffizi2 enten |wj,k | als Energieverteilung in der Zeit-Frequenz-Ebene interpretieren. 2 Jede Heisenberg-Box enth¨ alt enth¨ alt einen gewissen Betrag |wj,k | der Gesamtenergie des Signals. Zwei Extremf¨ alle der Zeit-Frequenz-Zerlegungen sind in Abb. 9.3 dargestellt. Die erste hat eine perfekte Zeitaufl¨ osung, aber keine Frequenzaufl¨osung. Die entsprechende Basis ist den Sample-Werten zugeordnet und somit k¨onnten die Basisfunktionen beispielsweise die sinc-Funktionen sein. Allgemeiner gesprochen k¨ onnten es Skalierungsfunktionen in der feinsten Skala sein. Die andere Zeit-Frequenz-Zerlegung ist die diskrete Fourier-Transformation, die keine Zeitaufl¨ osung, aber eine perfekte Frequenzaufl¨osung hat. ω
ω
6
6
- t
- t
Abb. 9.3. Zeit-Frequenz-Ebene f¨ ur die Basis, die dem Sampling und der FourierBasis zugeordnet ist
Eine weitere Zeit-Frequenz-Zerlegung ist die gefensterte Fourier-Transformation, wobei das Signal in Segmente (kT, (k + 1)T ) der L¨ange T zerlegt wird, und auf jedes Segment eine diskrete Fourier-Transformation angewendet wird. Die Zerlegung in Segmente l¨ aßt sich so auffassen, daß man das Signal mit Fensterfunktionen multipliziert, die auf (kT, (k + 1)T ) gleich 1 und andernfalls gleich 0 sind. Diese Fenster werden als ideale Fenster bezeichnet. Um ¨ den Ubergang zwischen den Segmenten glatter zu machen, kann man glattere Versionen des idealen Fensters verwenden. Man multipliziert dann das Signal mit w(t − kT ), wobei w eine glatte Approximation des idealen Fensters f¨ ur (0, T ) ist. Die Parkettierung der Zeit-Frequenz-Ebene f¨ ur die gefensterte Fourier-Transformation ist in Abb. (9.4) f¨ ur zwei verschiedene Fenstergr¨oßen T dargestellt.
144
9 Adaptive Basen ω
ω
6
6
2π T 2π T
- t T
- t T
Abb. 9.4. Parkettierung der Zeit-Frequenz-Ebene f¨ ur die gefensterte FourierTransformation mit zwei Fenstergr¨ oßen
Die Wahl der richtigen Fenstergr¨ oße ist das Hauptproblem bei der gefensterten Fourier-Transformation. Ist T die Fenstergr¨oße, dann wird jedes Segment bei Frequenzen analysiert, die ganzzahlige Vielfache von 2π/T sind. W¨ahlt man eine enges Fenster, dann erh¨ alt man eine gute Zeitaufl¨osung, aber eine schlechte Frequenzaufl¨ osung und umgekehrt. Eine L¨ osung dieses Problems w¨ are die Anpassung der Fenstergr¨oße an die Frequenz sowie die Verwendung enger Fenster bei hohen Frequenzen und breiterer Fenster bei niedrigen Frequenzen. Das erfolgt im Grunde genommen durch die Wavelet-Transformation, obwohl dabei kein explizites Fenster auftritt. Bei hohen Frequenzen sind die Wavelets im Zeitbereich gut lokalisiert und die Heisenberg-Boxen sind eng und hoch. Bei niedrigeren Frequenzen sind die Wavelets mehr ausgebreitet und man erh¨ alt Boxen großer Breite und kleiner H¨ ohe. Das ist n¨ utzlich, denn viele Hochfrequenzph¨anomene sind kurzlebig, zum Beispiel Kanten und Transienten; dagegen haben Niederfrequenzkomponenten u angere Lebensdauer. ¨ blicherweise eine l¨ ¨ Ubungsaufgaben zu Abschnitt 9.1 ¨ Ubungsaufgabe 9.1. Skizzieren Sie, wie sich die Zerlegung der Zeit-FrequenzEbene ¨ andert, wenn man die Filterungsschritte, beginnend mit den feinsten Skalierungskoeffizienten, in der Forward-Wavelet-Transformation durchl¨auft.
9.2 Wavelet-Pakete Wie oben erw¨ ahnt, eignet sich die Wavelet-Transformation f¨ ur Signale mit kurzlebigen Hochfrequenz-Komponenten und langlebigen Niederfrequenz-Komponenten. Jedoch haben einige Signale Hochfrequenz-Komponenten mit lan-
9.2 Wavelet-Pakete
145
ger Lebensdauer.1 Das ist der Fall bei Bildern mit Texturen, das heißt, Teile des Bildes haben eine spezielle Struktur. Ein Beispiel f¨ ur Texturen ist aus dem Fingerabdruckbild von Abb. 1.12 in Kapitel 1 ersichtlich. Derartige Teile des Bildes haben h¨ aufig einen wohldefinierten Frequenzinhalt bei hohen Frequenzen. Deswegen braucht man viele Feinskalen-Wavelets, um diesen Bereich des Bildes zu approximieren. In diesem Fall k¨onnte es vorteilhaft sein, ausgedehntere Feinskalen-Wavelets zu haben. Die Wavelet-Paket-Transformationen Die Wavelet-Transformation zerlegt Signale in Frequenzb¨ander (vgl. Abb. 4.8). Wir m¨ ochten dazu in der Lage sein, das Signal in allgemeinere Frequenzb¨ ander aufzuteilen. Eine M¨ oglichkeit, diese Flexibilit¨at zu erzielen, besteht in Folgendem: Man gestattet auch, daß die Wavelet-Koeffizienten durch eine Analyse-Filterbank aufgeteilt werden. Wir beginnen mit den Skalierungskoeffizienten sJ und berechnen die Skalierungskoeffizienten sJ−1 in einer gr¨ oberen Skala sowie die Wavelet-Koeffizienten wJ−1 unter Verwendung einer Analyse-Filterbank. Beide lassen sich durch die Analyse-Filter weiter aufteilen. Auf der n¨ achsten Ebene k¨ onnen bis zu vier Folgen von Koeffizienten auftreten und alle k¨ onnen weiter aufgeteilt werden. Das liefert uns eine Baumstruktur von Koeffizienten auf verschiedenen Ebenen, so wie in Abb. 9.5 dargestellt. Dieser Baum heißt der Wavelet-Paket-Baum. An jedem Knoten im Wavelet-Paket-Baum haben wir eine Menge von Koeffizienten, bei denen wir uns entscheiden k¨ onnen, ob wir sie weiter aufteilen oder nicht. Jede Folge derartiger Auswahlen liefert eine spezielle Wavelet-Paket-Transformation. Jede derartige Transformation entspricht einem Teilbaum des Wavelet-PaketBaums, wobei alle Knoten entweder zwei Nachfolger haben oder gar keinen. Die Wavelet-Paket-Basisfunktionen Jede Wavelet-Paket-Transformation liefert uns die Koeffizienten in einer speziellen Wavelet-Paket-Basis. Die Skalierungskoeffizienten (sJ−1,k ) und die Wavelet-Koeffizienten (wJ−1,k ) sind Koeffizienten in den Basen {ϕJ−1,k } und {ψJ−1,k } von VJ−1 und WJ−1 . Teilen wir den Raum VJ−1 weiter auf, dann erhalten wir Koeffizienur die Basis-Funktionen ϕJ−2,k und ψJ−2,k , ten (sJ−2,k ) und (wJ−2,k ) f¨ die zusammen den Raum VJ−1 aufspannen. Teilen wir WJ−1 durch die Analyse-Filter auf, dann erhalten wir Koeffizienten f¨ ur gewisse Wavelet-PaketBasisfunktionen. Bevor wir diese Basisfunktionen definieren, f¨ uhren wir eine praktische Schreibweise ein: m0 (ω) = H(ω) und 1
m1 (ω) = G(ω).
In Raumkoordinaten sind die Terme große Komponenten mit hoher Wellenzahl und lange Ausdehnungen. Wir folgen jedoch der u ¨ blichen Praxis und verwenden den Begriff Frequenz anstelle von Wellenzahl.
146
9 Adaptive Basen
sJ
XXX XXX XX z X 9 sJ −1
wJ −1
H HH H j H
H HH H j H
sJ −2
wJ −2
@ @ R @
sJ −3
@ @ R @
@ @ R @
@ @ R @
wJ −3
Abb. 9.5. Der Wavelet-Paket-Baum
Wir definieren nun die Wavelet-Pakete auf der Ebene J − 2 als (1,0)
(1,0)
(1,1)
(1,1)
ψJ−2,k (t) = ψJ−2 (t − 2J−2 k) und ψJ−2,k (t) = ψJ−2 (t − 2J−2 k), wobei
(9.1)
1 (1,0) ψJ−2 (ω) = √ m0 (21−J ω)ψJ−1,0 (ω), 2 1 (1,1) ψJ−2 (ω) = √ m1 (21−J ω)ψJ−1,0 (ω). 2 (1,0)
(1,1)
Die Wavelet-Pakete ψJ−2,k und ψJ−2,k bilden zusammen eine Riesz-Basis von WJ−1 . Das folgt aus dem sogenannten Splitting Trick : Satz 9.1. Es sei {χ(t−k)} eine Riesz-Basis eines Unterraums V . Dann bilden die Funktionen √ √ χ0k (t) = 2χ0 (t − 2k) und χ1k (t) = 2χ1 (t − 2k) zusammen eine Riesz-Basis von V , wobei 10 (ω) = m0 (ω) χ χ(ω)
und
11 (ω) = m1 (ω) χ χ(ω).
Wir definieren nun allgemeine Wavelet-Pakete als e ψj,k (t) = ψje (t − 2−j k),
wobei e = (e1 , . . . , eL ) eine Folge von Nullen und Einsen ist und
9.2 Wavelet-Pakete
1e (ω) = 2−j/2 ϕ(2 −j−L ω) ψ j
L−1 '
147
mei (2i−j−L ω).
i=0
Mit anderen Worten: Man erh¨ alt das Wavelet-Paket ψje durch Anwendung einer Folge von Tiefpaß- und Hochpaß-Filterungen entsprechend den ei ’s, wobei man mit der Skalierungsfunktion ϕj+L,0 beginnt. Der von den Wavelete Paketen ψj,k f¨ ur festes j und e aufgespannte Raum wird mit Wje bezeichnet. In Abb. 9.6 zeigen wir die idealen Frequenzb¨ ander, die diesen R¨aumen zugeordnet sind.
V0 (0)
(1)
W−1
W−1
(0,0)
(0,1)
W−2 (0,0,0)
W−3 0
(0,0,1)
W−3
(1,0)
W−2 (0,1,0)
W−3
(0,1,1)
W−3
(1,1)
W−2 (1,0,0)
W−3
π/2
(1,0,1)
W−3
W−2 (1,1,0)
W−3
(1,1,1)
W−3
π
Abb. 9.6. Die idealen Frequenzb¨ ander f¨ ur die Wavelet-Paket-R¨ aume
In Abbildung 9.7 zeigen wir die Parkettierung der idealen Zeit-FrequenzEbene f¨ ur zwei spezielle Wavelet-Paket-Basen zusammen mit den entsprechenden Teilb¨ aumen des Wavelet-Paket-Baumes. Man beachte, daß sich bei einer langen Zeitdauer mit der ersten Basis (linke Abbildung) zwei HochfrequenzBasisfunktionen ergeben. Wavelet-Pakete in zwei Dimensionen Es gibt auch Wavelet-Pakete f¨ ur zweidimensionale Wavelet-Transformationen. F¨ ur separable Wavelets l¨ auft das auf Folgendes hinaus: Man gestattet, daß die Detail-R¨ aume WH , WV und WD mit separablen zweidimensionalen Filtern weiter aufgeteilt werden. Das ergibt einen komplizierteren Wavelet-PaketBaum, bei dem jeder Knoten vier Nachfolger hat. In Abb. 9.8 sieht man die Frequenzebenenzerlegung von separablen Wavelet-Paketen nach einmaligen und zweimaligem Splitting. Die oberen Indizes 0, 1, 2, 3 bezeichnen das Filtern mit H, GH , GV bzw. GD . ¨ Ubungsaufgaben zu Abschnitt 9.2 ¨ Ubungsaufgabe 9.2. Skizzieren Sie Schritt f¨ ur Schritt, wie sich die ideale Zerlegung der Zeit-Frequenz-Ebene ¨ andert, wenn man von der Darstellung im Raum VJ zu den Wavelet-Paket-Darstellungen von Abb. 9.7 u ¨bergeht.
148
9 Adaptive Basen
sH H H s Hs @ @ s @s s @s A A s As s As
s
ω
ω
6
6
sH H H s Hs @ @s A s As
- t
- t
Abb. 9.7. Die Parkettierung der idealen Zeit-Frequenz-Ebene fur ¨ zwei verschiedene Wavelet-Paket-Basen η
η
π6
π6 (2,2)
W−2
(2,0)
W−2
(0,2)
W−2
(0,0)
W−2
W−2 (2)
(2,3)
W−2
(3,2)
W−2
(2,1)
W−2
(0,3)
W−2
(0,1)
W−2
(3,3)
(3,0)
W−2
(1,2)
W−2
(1,0)
W−2
(3)
W−1
W−1
W−2 π 2
(3,1)
π 2
W−2 (0)
(1,3)
(1)
W−1
W−1
π 2
- ξ
W−2
π
π 2
(1,1)
- ξ
π
Abb. 9.8. Die ideale Zerlegung der Frequenzebene f¨ ur separable zweidimensionale Wavelet-Paket-Basen
9.3 Entropie und Best-Basis-Auswahl Eine nat¨ urliche Frage an dieser Stelle ist, welche der vielen Wavelet-PaketTransformationen man w¨ ahlen soll. Haben wir einige A-priori-Informationen u ber die zu betrachtenden Signale, dann kann das mitunter dazu verwendet ¨ werden, eine geeignete Wavelet-Paket-Basis zu w¨ahlen. Das trifft etwa bei den FBI-Fingerabdruckbildern zu, bei denen man weiß, daß sich die Furchen in den Fingerabdr¨ ucken mit gewissen H¨ aufigkeiten wiederholen. Stehen keine
9.3 Entropie und Best-Basis-Auswahl
149
derartigen Informationen zur Verf¨ ugung, dann m¨ ussen wir diejenige Transformation w¨ ahlen, die f¨ ur das gegebene Signal in Bezug auf ein gew¨ahltes Kriterium optimal ist. Der Best-Basis-Algorithmus Angenommen, wir haben eine Kostenfunktion Λ, die auf irgendeine Weise die Leistung der verschiedenen Transformationen mißt, das heißt, falls c und c die Koeffizienten in zwei verschiedenen Basen sind, dann wird die erste bevorzugt, falls Λ(c) < Λ( c). Wir setzen weiter voraus, daß Λ additiv ist, das heißt: Vereinigen wir zwei Folgen c1 und c2 zu einer Folge c, die wir in der Form c = [c1 c2 ] schreiben, dann haben wir Λ(c) = Λ(c1 ) + Λ(c2 ). Wir beschreiben, wie man die Wavelet-Paket-Basis findet, deren Koeffizienten f¨ ur ein gegebenes Signal den Wert Λ minimieren. Das scheint zun¨achst eine schwierige Frage zu sein, da die Anzahl der Wavelet-Paket-Basen proportional zu 2N ist, falls wir mit N Skalierungskoeffizienten sJ,k beginnen. Jedoch gibt es einen DepthFirst-Suchalgorithmus, der eine optimale Basis in O(N log N ) Operationen findet. Dieser Algorithmus heißt Best-Basis-Algorithmus. Um zu verstehen, wie der Algorithmus funktioniert, sehen wir uns die Aufteilung der Skalierungskoeffizienten sJ in sJ−1 und wJ−1 an. Wir nehmen rekursiv an, daß wir eine optimale Folge von Auswahlm¨oglichkeiten f¨ ur eine Aufteilung sJ−1 und wJ−1 kennen und bezeichnen die entsprechenden opt optimalen Wavelet-Paket-Koeffizienten mit sopt at J−1 und wJ−1 . Die Additivit¨ impliziert nun, daß die besten Wavelet-Paket-Koeffizienten, die wir beim Aufopt opt onnen, durch copt teilen von sJ erhalten k¨ J−1 = [sJ−1 wJ−1 ] gegeben sind, denn oth oth f¨ ur jede andere Menge von Wavelet-Paket-Koeffizienten coth J−1 = [sJ−1 wJ−1 ] haben wir: opt opt opt oth oth Λ(coth J−1 ) = Λ(sJ−1 ) + Λ(wJ−1 ) ≥ Λ(sJ−1 ) + Λ(wJ−1 ) = Λ(cJ−1 ).
Wir sollten demnach sJ genau dann aufteilen, wenn opt opt Λ(sJ ) > Λ(copt J−1 ) = Λ(sJ−1 ) + Λ(wJ−1 ).
Entropie und weitere Kostenfunktionen Entropie Bei vielen Anwendungen besteht das Ziel darin, die relevanten Informationen aus einem Signal zu extrahieren, indem man m¨oglichst wenige Koeffizienten verwendet. Wir m¨ ochten also, daß einige Koeffizienten groß und die verbleibenden klein sind. Die Entropie ist ein u ¨ bliches Mittel zur Messung dieser Eigenschaft. Die Entropie der Koeffizienten c wird definiert durch pk log pk , H(c) := − k
150
9 Adaptive Basen
wobei
2
pk =
|ck |
2
c
und
0 log 0 := 0.
¨ Eine wohlbekannte Tatsache in Bezug auf das in Ubungsaufgabe 9.4 skizzierte Entropiemaß ist durch folgenden Satz gegeben: Satz 9.2. Ist c eine endliche Folge der L¨ange K, dann gilt 0 ≤ H(c) ≤ log K. Dar¨ uber hinaus wird der Minimalwert nur dann erreicht, wenn mit Ausnahme eines ck alle anderen ck gleich √0 sind, und das Maximum wird nur dann erreicht, wenn alle |ck | gleich 1/ K sind. ⊓ ⊔ Nat¨ urlich gilt die Schlußfolgerung auch f¨ ur Folgen c mit h¨ochstens K von Null verschiedenen Koeffizienten. Die Zahl d(c) = eH(c) ist in der Informationstheorie als die theoretische Dimension von c bekannt. Man kann Folgendes beweisen: Die Anzahl der Koeffizienten, die zur Approximation von c mit einem Fehler kleiner als ǫ ben¨ otigt werden, ist proportional zu d(c)/ǫ. Jedoch d¨ urfen wir das Entropiemaß als Kostenfunktion nicht direkt benutzen, da es nicht additiv ist. Definieren wir aber die additive Kostenfunktion 2 2 |ck | log |ck | , Λ(c) := − k
dann haben wir (9.2)
H(c) = 2 log c +
1 c
2 Λ(c).
Wir sehen also, daß das Minimieren von Λ a ¨quivalent zum Minimieren von H f¨ ur Koeffizientenfolgen mit fester Norm ist. M¨ochten wir also den BestBasis-Algorithmus zur Minimierung der Entropie verwenden, dann m¨ ussen wir gew¨ ahrleisten, daß die Norm von sJ gleich der Norm von [sJ−1 wJ−1 ] ist. Mit anderen Worten: wir m¨ ussen orthogonale Filter verwenden. Weitere Kostenfunktionen Eine alternative Kostenfunktion ist die ℓ1 -Norm von c: Λ(c) := |ck | . k
F¨ ur Koeffizientenfolgen mit fester ℓ2 (Z)-Norm wird Λ ebenfalls minimiert, wenn s¨ amtliche Koefficienten – mit einer Ausnahme – gleich 0 sind, und Λ
9.3 Entropie und Best-Basis-Auswahl
151
wird maximiert, wenn alle |ck | gleich sind. F¨ ur relevante Vergleiche zwischen sJ und [sJ−1 wJ−1 ] ben¨ otigen wir wieder die Orthogonalit¨at der Filter. Abschließend erw¨ ahnen wir zwei anwendungsabh¨angige Kostenfunktionen. Verwendet man Wavelet-Pakete zur Unterdr¨ uckung von Rauschen bei Signalen, dann m¨ ochte man diejenige Basis w¨ ahlen, die den kleinsten Fehler zwischen dem rauschunterdr¨ uckten Signal und dem echten Signal liefert. Als Kostenfunktion kann man eine Sch¨ atzung dieses Vorhersagefehlers verwenden. Ein Beispiel hierf¨ ur ist die Kostenfunktion SURE, die wir in Abschnitt 10.2 verwenden. Bei Klassifikationsanwendungen verwendet man Kostenfunktionen, die die Separierungsf¨ ahigkeit von Klassen messen. Eine ausf¨ uhrlichere Diskussion findet man in Kapitel 14. ¨ Ubungsaufgaben zu Abschnitt 9.3 ¨ Ubungsaufgabe 9.3. Beweisen Sie, daß das Entropiemaß keine additive Kostenfunktion ist, daß aber Λ eine solche ist. Danach beweise man die Identit¨at (9.2). ¨ Ubungsaufgabe 9.4. Beweisen Sie Satz 9.2. Hinweis: Verwenden Sie dabei, daß die Exponentialfunktion strikt konvex ist, das heißt, P e k λk xk ≤ λk exk k
gilt f¨ ur λk ≥ 0 und k λk = 1, wobei Gleichheit nur dann auftritt, wenn alle xk gleich sind. Man wende das mit λk = pk und xk = log pk an, um eH(c) ≤ K zu erhalten. Die verbleibende Ungleichung sollte offensichtlich sein, da die Beziehung 0 ≤ pk ≤ 1 gilt, woraus log pk ≤ 0 folgt. Die einzige M¨oglichkeit f¨ ur H(c) = 0 besteht darin, daß alle pk entweder 0 oder 1 sind. Da ihre Summe jedoch 1 ist, folgt, daß ein pk gleich 1 ist und die u ¨ brigen gleich 0 sind. ¨ Ubungsaufgabe 9.5. Zeigen Sie, daß f¨ ur c ∈ RK die Ungleichung c ≤
K
k=1
|ck | ≤
√ K c
gilt, wobei der Maximalwert erreicht wird, wenn alle |ck | gleich sind, und der Minimalwert erreicht wird, wenn alle ck mit einer Ausnahme gleich 0 sind. Hinweis: F¨ ur die rechte Ungleichung schreibe man K
k=1
|ck | =
K
k=1
1 · |ck |
und verwende die Cauchy-Schwarzsche Ungleichung. F¨ ur die linke Seite kann ur man c = 1 voraussetzen (warum?). Man zeige nun, daß hieraus |ck | ≤ 1 f¨ 2 alle k folgt. Dann gilt |ck | ≤ |ck | und die Ungleichung folgt.
152
9 Adaptive Basen
9.4 Lokale trigonometrische Basen Im vorhergehenden Abschnitt hatten wir beschrieben, wie Wavelet-Pakete den Zeit-Frequenz-Zerlegungen eine Frequenz-Adaptivit¨at verleihen. Bei der Verwendung dieser Pakete teilen wir die Frequenzb¨ander immer dann in zwei Teile, wenn es f¨ ur uns vorteilhaft ist. Lokale trigonometrische Basen lassen sich als dual zu Wavelet-Paketen auffassen, wobei nun die Adaptivit¨at anstelle der Zeitvariablen auftritt. Dar¨ uber hinaus werden die lokal trigonometrischen Basen explizit definiert, w¨ ahrend die Definition der Wavelet-Pakete algorithmisch erfolgt. Die lokalen trigonometrischen Basisfunktionen Wir beginnen mit einer Partition der reellen Geraden in Intervalle Ik , k ∈ Z. Aus Einfachheitsgr¨ unden w¨ ahlen wir Ik = [k, k + 1], aber die Konstruktion funktioniert ohne ernsthafte Komplikationen auch f¨ ur nicht gleichm¨aßige Partitionen. Wir betrachten die Fensterfunktionen wk (t), die den Intervallen Ik zugeordnet sind und folgende Eigenschaften haben: (9.3a) (9.3b)
0 ≤ wk (t) ≤ 1 f¨ ur alle t, wk (t) = 0 f¨ ur t ≤ k −
3 1 und t ≥ k + , 2 2
1 , 2 1 (9.3d) wk (k + 1 + t)2 + wk (k + 1 − t)2 = 1 f¨ ur |t| ≤ , 2 wk (k − t) = wk−1 (k + t) f¨ (9.3e) ur alle t. (9.3c)
wk (k + t)2 + wk (k − t)2 = 1 f¨ ur |t| ≤
Man ben¨ otigt diese etwas komplizierten Bedingungen, um zu gew¨ahrleisten, daß die – in K¨ urze zu definierenden – lokalen trigonometrischen Basisfunktionen eine ON-Basis von L2 (R) liefern. Setzen wir t = 1/2 in (9.3c), dann sehen wir, daß wk (k + 1/2) = 1, denn aus (9.3b) ergibt sich wk (k − 1/2) = 0. Mitunter fordert man, daß die Fensterfunktion wk identisch 1 auf [k, k + 1] und 0 außerhalb dieses Intervalls ist, wobei kleine Intervalle um t = k und t = k + 1 ausgenommen sind. In diesem Fall liegt wk (t) sehr nahe bei dem idealen Fenster. Da wir eine gleichm¨aßige Partition haben, k¨ onnen wir die Fensterfunktionen aus einer Fensterfunktion w(t) durch die Verschiebung wk (t) = w(t − k) gewinnen. Die lokalen trigonometrischen Basisfunktionen f¨ ur die Partitionierung Ik werden konstruiert, indem man die Fenster wk (t) mit Kosinusschwingungen ullt: bei den Frequenzen π(n + 12 ) f¨
√ 1 bn,k (t) = 2 wk (t) cos π(n + )(t − k) . 2 Man kann zeigen, daß die Funktionen bn,k eine orthonormale Basis von L2 (R) bilden.
9.4 Lokale trigonometrische Basen
153
2 1.5 1 0.5 0 0.5 1
1
0
1
2
3
4
Abb. 9.9. Fensterfunktionen 2
2
1
1
0
0
1
1
2
1
0
1
2
2
1
0
1
2
Abb. 9.10. Zwei Basisfunktionen b3,0 und b5,0
Zur Berechnung der Koeffizienten cn,k = f, bn,k =
∞
f (t)bn,k (t) dt
−∞
√ = 2
k+ 32
k− 12
1 f (t)wk (t) cos π(n + )(t − k) dt 2
bemerken wir, daß cos π(n + 12 )(t − k) symmetrisch um den linken Intervallendpunkt t = k und antisymmetrisch um den rechten Intervallendpunkt t = k + 1 liegt. Deswegen lassen sich die außerhalb des Intervalls [k, k + 1] uckfalten, wie in Abb. 9.11 liegenden Teile von f (t)wk (t) so in das Intervall zur¨ dargestellt. Das erzeugt eine gefaltete Version f von f und die Koeffizienten cn,k sind dann gegeben durch cn,k =
√ 2
k
k+1
1 f(t) cos π(n + )(t − k) dt. 2
154
9 Adaptive Basen 3
2.5
2
1.5
1
0.5
0
0.5
1
1.5
2
1
0.5
0
0.5
1
1.5
2
Abb. 9.11. Die Fensterfunktion f (t)w(t) (fortlaufende Linie) und ihre gefaltete Version (gestrichelte Linie)
Berechnet man die Koeffizienten cn,k nach dem Falten, dann kann man die schnellen Algorithmen der diskreten Kosinustransformation (Discrete Cosine Transform, DCT) verwenden. F¨ ur N Sample-Werte bel¨auft sich dann die Anzahl der Operationen auf O(N log N ). Zur Rekonstruktion der Sample-Werte von f aus den Koeffizienten cn,k wenden wir zuerst eine inverse Kosinustransformation an, um die Sample-Werte der gefalteten Funktion f zu erhalten. ¨ Diese Funktion kann dann entfaltet“ werden, um f zu erzeugen (vgl. Ubungs” aufgabe 9.6). Adaptive Segmentierung Wie bereits fr¨ uher erw¨ ahnt, funktioniert die Konstruktion der Basisfunktionen bn,k f¨ ur eine beliebige Partition der reellen Geraden. Wir suchen eine optimale Partition, indem wir zum Beispiel eine der oben beschriebenen Kostenfunktionen verwenden. Das kann durchgef¨ uhrt werden, indem man Intervalle adaptiv fusioniert“, wobei man von einer Anfangspartition ausgeht. Wir wollen die ” Verschmelzung der Intervalle I0 = [0, 1] und I1 = [1, 2] zu I0 = [0, 2] betrachten. Eine Fensterfunktion f¨ ur I0 ist gegeben durch ! w 0 (t) = w0 (t)2 + w1 (t)2 ,
und man kann zeigen, daß dieser Ausdruck leicht modifiziert die Bedingungen (9.3a)-(9.3e) erf¨ ullt. Die zu I0 geh¨ orenden Basisfunktionen sind definiert durch
1 t bn,0 (t) = √1 w 0 (t) cos π(n + ) . 2 2 2
9.4 Lokale trigonometrische Basen
155
Man beachte, daß wir bei Frequenzen π2 (n+ 12 ) nach dem Verschmelzen analysieren und somit eine doppelt so gute Frequenzaufl¨osung erhalten. Gleichzeitig haben wir einen Verlust an Zeitaufl¨ osung. Man bezeichne die Koeffizienten der Basisfunktionen bn,0 , bn,1 und bn,0 mit cn,0 , cn,1 und cn,0 . Man kann zeigen, daß die Transformation von [c0 c1 ] nach c0 orthogonal ist. Deswegen zahlt es c0 ) < Λ(c0 ) + Λ(c1 ). sich aus, I0 und I1 miteinander zu verschmelzen, wenn Λ( Auf dieselbe Weise k¨ onnen wir die Intervalle I2k = [2k, 2k + 1], I2k+1 = [2k + 1, 2k + 2] in Ik = [2k, 2k + 2] verschmelzen. Diese lassen sich dann weiter verschmelzen und es ergibt sich eine Baumstruktur, die dem Wavelet-PaketBaum ¨ ahnelt. Bei diesem Baum kann man den gleichen Suchalgorithmus anwenden, um eine optimale Zeitsegmentierung mit O(N log N ) Operationen zu finden. In Abb. 9.12 ist die Zerlegung der Zeit-Frequenz-Ebene f¨ ur eine spezielle lokale trigonometrische Basis dargestellt. Der Leser m¨oge herausfinden, auf welche Weise die Intervalle verschmolzen wurden, um diese Basis zu erhalten (als Ausgangspunkt nehme man den Fall ohne Frequenzaufl¨osung, vgl. Abb. 9.3). ω
6
- t Abb. 9.12. Parkettierung der Zeit-Frequenz-Ebene durch eine lokale trigonometrische Basis
¨ Ubungsaufgaben zu Abschnitt 9.4 ¨ Ubungsaufgabe 9.6. Zeigen Sie, daß die gefaltete Funktion f wie folgt gegeben ist: wk (k − t)f (k + t) − wk (k + t)f (k − t), f¨ ur − 21 ≤ t ≤ 0, f(k + t) = wk (k + t)f (k + t) + wk (k − t)f (k − t), f¨ ur 0 ≤ t ≤ 12 .
Zeigen Sie auch, daß f aus seiner gefalteten Version folgendermaßen rekonstruiert werden kann:
156
9 Adaptive Basen
f (k + t) =
wk (k + t)f(k − t) + wk (k − t)f(k + t), f¨ ur − 21 ≤ t ≤ 0, wk (k + t)f(k + t) − wk (k − t)f(k − t), f¨ ur 0 ≤ t ≤ 12 .
¨ Ubungsaufgabe 9.7. Konstruieren Sie eine Parkettierung der Zeit-FrequenzEbene, die sich nicht aus Wavelet-Paketen oder lokalen trigonometrischen Basen gewinnen l¨ aßt.
9.5 Bemerkungen F¨ ur weitere Ausf¨ uhrungen zu Wavelet-Paketen und lokalen trigonometrischen Basen sowie Zeit-Frequenz-Zerlegungen im Allgemeinen verweisen wir auf die Arbeit Lectures on Wavelet Packet Algorithms [31] von Wickerhauser. Wavelet-Pakete lassen sich auch im nichtseparablen Fall definieren. WaveletPakete f¨ ur hexagonale Wavelets f¨ uhren auch zu einigen faszinierenden Frequenzebenen-Zerlegungen, die man in der Arbeit von Cohen und Schlenker [10] findet.
10 Kompression und Unterdru ¨ ckung von Rauschen
Bis zum heutigen Tage ist die Bildkompression die vielleicht erfolgreichste Anwendung der Wavelets. Sie beruht auf der Feststellung, daß f¨ ur die meisten Bilder einige große Wavelet-Koeffizienten die relevanten Informationen“ u ¨ ber ” das Bild enthalten, w¨ ahrend die anderen Koeffizienten sehr klein sind. Eine analoge Betrachtung ist die theoretische Grundlage, die hinter dem Wavelet-Denoising steht. Orthogonale Wavelets transformieren weißes Rauschen in weißes Rauschen und deswegen verteilt sich das Rauschen gleichm¨aßig u ¨ ber alle Wavelet-Koeffizienten. Dieser Umstand erm¨oglicht das Extrahieren der wenigen großen Wavelet-Koeffizienten und eliminiert das meiste Rauschen, indem die kleinen Wavelet-Koeffizienten gleich 0 gesetzt werden.
10.1 Bildkompression Aus Gr¨ unden der Einfachheit arbeiten wir hier nur mit Grauskalen-Bildern f (x, y), wobei 0 < x, y < 1. Wir setzen 0 ≤ f (x, y) ≤ 1 voraus, wobei 0 schwarz und 1 weiß ist. Die Verallgemeinerung auf Farbbilder ist unmittelbar ersichtlich, denn ein Farbbild l¨ aßt sich unter Verwendung der standardm¨aßigen Rot-Gr¨ un-Blau-Darstellung durch drei Funktionen fr (x, y), fg (x, y) und fb (x, y) darstellen. Ein allgemeiner Bildkompressionsalgorithmus besteht aus den drei in Abb. 10.1 dargestellten Teilen: Bildtransformation, Quantisierung und Entropie-
f
-
BildTransformation
- Quantisierung
-
EntropieCodierung
Abb. 10.1. Der allgemeine Bildkompressionsalgorithmus
-
158
10 Kompression und Unterdr¨ uckung von Rauschen
Codierung. Die Bildtransformation ist im Allgemeinen eine lineare und invertierbare Transformation, die das Bild dekorreliert, um die Kompression zu erm¨ oglichen. Der Quantisierungsschritt bildet die transformierten Koeffizienten in eine kleinere endliche Menge von Werten ab. Das ist derjenige Schritt im Kompressionsalgorithmus, bei dem einige Informationen verlorengehen. Der u ¨ berwiegende Teil der Kompression erfolgt im Entropie-Codierungs-Schritt. Zur Rekonstruktion des komprimierten Bildes kehren wir den ganzen Prozeß um (vgl. Abb. 10.2), was zu einer Approximation f des urspr¨ unglichen Bildes f¨ uhrt. fb
Inverse Transformation
Dequantisierung
Decodierung
Abb. 10.2. Dekompression
Bildtransformation Die meisten Bilder haben eine r¨ aumliche Korrelation, das heißt, benachbarte Pixel tendieren dazu, ¨ ahnliche Grauskalenwerte zu haben. Der Zweck der Bildtransformation besteht darin, diese Redundanz auszunutzen, um eine Kompression zu erm¨ oglichen. Man rufe sich die zweidimensionale HaarTransformation in Erinnerung, bei der Gruppen von vier Pixelwerten durch ihren Mittelwert und drei Wavelet-Koeffizienten oder Differenzen“ ersetzt wer” den. Sind die besagten vier Pixelwerte ¨ ahnlich, dann sind die entsprechenden Wavelet-Koeffizienten im Wesentlichen gleich 0. Die Mittelwertbildung und die Differenzenbildung werden mit den Mittelwerten rekursiv wiederholt, um die großskalige Redundanz zu erfassen. F¨ ur glatte Bildbereiche haben die meisten Wavelet-Koeffizienten fast den Wert 0. Feinskalen-Wavelet-Koeffizienten ¨ werden an den Kanten und in Bereichen mit schnellen Anderungen ben¨otigt. ¨ Einige großskalige Koeffizienten sorgen f¨ ur langsame Anderungen im Bild. ¨ F¨ ur Bilder mit zu vielen Anderungen enthalten einige Wavelet-Koeffizienten die relevanten Bildinformationen. F¨ ur Bilder mit Textur, wie zum Beispiel Fingerabdruck-Bilder, k¨ onnte sich eine Wavelet-Paket-Transformation als angemessener erweisen. Der gr¨ oßte Teil der Kompression erfolgt w¨ahrend der ersten Filterungsschritte der Wavelet-Transformation. Deswegen wird die Filterbank bei der Wavelet-Bildkompression u ¨ blicherweise nur einige Male iteriert, etwa vieroder f¨ unfmal. Man verwendet ein Wavelet, das glatter als das Haar-Wavelet ist, denn die Kompression mit Haar-Wavelets f¨ uhrt zu Block-Artefakten; auf dem rekonstruierten Bild treten rechteckige Muster auf. Die Wahl einer opti-
10.1 Bildkompression
159
malen Wavelet-Basis ist ein offenes Problem, denn dabei sind viele Aspekte zu ber¨ ucksichtigen. Zun¨ achst m¨ ochten wir, daß die Synthese-Skalierungsfunktionen und Wavelets glatt sind. Gleichzeitig erh¨ oht sich durch Glattheit die Filterl¨ange und somit auch die Tr¨ agerbreite der Skalierungsfunktionen und Wavelets. Zu lange Synthese-Filter f¨ uhren zu ringing“ Artefakten an den Kanten. Dar¨ uber ” hinaus m¨ ochten wir, daß alle Filter symmetrisch sind. Eine weiteres Problem im Zusammenhang mit der Wavelet-Bildkompression sind die Randartefakte. Bei der Wavelet-Transformation wird vorausgesetzt, daß f (x, y) auf der ganzen Ebene definiert ist, und deswegen muß das Bild außerhalb der R¨ ander fortgesetzt werden. In der Praxis gibt es drei Fortsetzungen: Zero-Padding, periodische Fortsetzung oder symmetrische Fortsetzung. Zero-Padding definiert das Bild als 0 außerhalb der R¨ander. Nach der Kompression hat das einen verdunkelnden“ Einfluß auf das Bild nahe des ” Randes. Die periodische Fortsetzung setzt voraus, daß sich das Bild außerhalb der R¨ ander periodisch erweitert. Entsprechen die Grauskalenwerte am linken Rand nicht denen am rechten Rand usw., dann induziert die periodische Fortsetzung Unstetigkeiten an den R¨ andern und das f¨ uhrt seinerseits erneut zu Kompressionsartefakten. Allgemein besteht die beste Methode in der Verwendung einer symmetrischen Fortsetzung, die zu einer stetigen Fortsetzung an den R¨andern f¨ uhrt, wobei keine Kompressionsartefakte auftreten. Eine symmetrische Fortsetzung erfordert symmetrische Filter. Eine alternative Methode ist die Verwendung des sogenannten randkorrigierten Wavelets. Wir setzen die Diskussion des Randproblems in Kapitel 15 fort. Eine weitere m¨ ogliche Bildtransformation ist die klassische Fourier-Transformation. Ist das Signal glatt, dann klingen die Fourier-Koeffizienten sehr schnell in Richtung hoher Frequenzen ab und das Bild l¨aßt sich unter Verwendung einer recht kleinen Anzahl von Niederfrequenz-Koeffizienten darstellen. Jedoch f¨ uhrt das Vorhandensein einer einzigen Kante dazu, daß die Fourier-Koeffizienten sehr langsam abklingen und es ist keine Kompression mehr m¨ oglich. Dieser Umstand l¨ aßt sich durch Verwendung einer gefensterten Fourier-Transformation umgehen. Hierbei handelt es sich im Wesentlichen um den JPEG-Algorithmus, bei dem das Bild in Bl¨ocke von 8 × 8 Pixel aufgeteilt wird und auf jeden Block eine Kosinus-Transformation angewendet wird. Bei Bl¨ ocken ohne Kanten sind die Hochfrequenz-Koeffizienten fast 0. Bei hohen Kompressionsverh¨ altnissen treten Block-Artefakte im JPEGocke werden im rekonstruierten Algorithmus auf, das heißt, die 8 × 8 Bl¨ Bild sichtbar. Mit geeignet gew¨ ahlten Wavelets funktioniert die WaveletBildkompression besser. Bei moderaten Kompressionsverh¨altnissen, zum Beispiel 1 : 10, l¨ aßt sich die Performance von JPEG mit der Performance von Wavelets vergleichen.
160
10 Kompression und Unterdr¨ uckung von Rauschen
Quantisierung und Entropie-Codierung Nach der Bildtransformation sind die meisten Koeffizienten fast 0. Ein grober Kompressionsalgorithmus w¨ urde darin bestehen, diese alle gleich 0 zu setzen und nur die wenigen verbleibenden signifikanten Koeffizienten zu speichern. Ein komplizierterer Algorithmus wendet eine Quantisierungsregel auf die transformierten Koeffizienten an. Eine Quantisierungsregel ist eine Funktion q : R → {0, 1, . . . , K}. Ein Koeffizientenwert x > 0 wird der ganzen Zahl k zugeordnet, falls er im Intervall (dk , dk+1 ] liegt. Die Zahlen dk werden als die Entscheidungspunkte der Quantisierungsregel bezeichnet. Ein negativer Wert von x wird einem entsprechenden Intervall auf der negativen Achse zugeordnet. Die Dequantisierungsregel ordnet der ganzen Zahl k ein Rekonstruktions¨ level rk ∈ (dk , dk+1 ] zu. Ublicherweise verwendet man f¨ ur rk den Mittelpunkt des Intervalls [dk , dk+1 ]. Quantisierung mit anschließender Dequantisierung liefert eine st¨ uckweise konstante Funktion, die allen dk < x ≤ dk+1 den gleichen Wert rk zuordnet (Abb. 10.3).
r2
6
r1
−d2
−d1
d1
d2
−r1 −r2
Abb. 10.3. Quantisierung mit anschließender Dequantisierung
Die Konstruktion der Entscheidungspunkte dk ist wichtig, wenn man eine gute Kompression erhalten m¨ ochte. Bei der Wavelet-Bildkompression verwendet man verschiedene Quantisierungsregeln f¨ ur verschiedene Skalen. Eine gr¨ oßere Anzahl von Bits und deswegen mehr Entscheidungspunkte werden bei ¨ Schl¨ ussel“-Frequenzb¨ andern verwendet. Ublicherweise werden den h¨ochsten ” Frequenzb¨ andern sehr wenige Bits zugeordnet, w¨ahrend den niedrigeren Frequenzb¨ andern immer mehr Bits zugeordnet werden. Innerhalb eines jeden Bandes werden die Entscheidungspunkte aufgrund eines statistischen Modells der Wavelet/Skalierungs-Koeffizienten festgelegt. Nach der Quantisierung haben wir eine Menge von ganzzahligen Koeffizienten, von denen viele gleich 0 sind. Zur Erzielung einer signifikanten Kom-
10.1 Bildkompression
161
pression m¨ ussen alle diese Nullen auf effiziente Weise gespeichert werden. Eine M¨ oglichkeit hierzu besteht darin, die Wavelet-Koeffizienten auf clevere Weise so anzuordnen, daß man lange Strings von Nullen erh¨alt. Diese Strings lassen sich dann durch ihre L¨ ange darstellen, indem man zum Beispiel die Run-L¨ angen-Codierung (Run-Length Encoding, RLE) verwendet. Das ist ein Beispiel f¨ ur die Entropie-Codierung. Es sind auch andere Kodierungsverfahren m¨ oglich, zum Beispiel die Huffman-Codierung. Die Entropie-Codierung ist ein verlustloser und demnach invertierbarer Schritt. Der einzige Verlustschritt beim Kompressionalgorithmus ist die Quantisierung. Video-Kompression Ein Video-Signal ist eine Folge von Bildern fi (x, y). Jede Sekunde enth¨alt un¨ gef¨ ahr 30 Bilder, das heißt, die Informationsmenge ist riesig. Zur Ubertragung der Videosignale u ¨ber das Internet oder u ¨ber Telefonleitungen (Videokonferenzen) ist eine massive Kompression erforderlich. Das einfachste Verfahren der Videokompression ist die gesonderte Kompression eines jeden einzelnen Bildes fi . Jedoch nutzt diese Methode nicht die tempor¨are Korrelation im Videosignal: benachbarte Frames haben die Tendenz, sehr ¨ahnlich zu sein. Eine diesbez¨ ugliche Vorgehensweise besteht darin, das Videosignal als 3D Signal f (x, y, t) zu behandeln und eine dreidimensionale Wavelet-Transformation anzuwenden. Eine weitere Methode ist die Berechnung der Differenzbilder ∆fi = fi+1 − fi . Zusammen mit einem Initialbild f0 enthalten diese Differenzbilder die Informationen, die zur Rekonstruktion des Videosignals notwendig sind. Die Dif¨ ferenzbilder enthalten die Anderungen zwischen benachbarten Frames. F¨ ur Bildteile ohne Bewegung sind die Differenzbilder gleich 0 und dadurch haben wir bereits eine signifikante Kompression erreicht. Eine weitere Kompression ergibt sich durch die Ausnutzung der r¨ aumlichen Redundanz in den Differenzbildern und Anwendung einer zweidimensionalen Wavelet-Transformation W auf alle ∆fi und auf f0 . Die transformierten Bilder W ∆fi und W f0 werden quantisiert und codiert und anschließend u ¨ bertragen/gespeichert. Zur Rekonstruktion des Videosignals werden die inversen Wavelet-Trans1 und f0 zu rekonstruieformationen berechnet, um die Approximationen ∆f i ren. Hieraus k¨ onnen wir das Videosignal approximativ folgendermaßen rekonstruieren: 1 . fi+1 = fi + ∆f i
Die schwachbesetzte Struktur von ∆fi kann dazu verwendet werden, die inversen Wavelet-Transformationen zu beschleunigen. F¨ ur Wavelets mit kompaktem Tr¨ ager beeinflußt jeder Skalierungs- und Wavelet-Koeffizient nur einen kleinen Bildbereich. Wir m¨ ussen also nur die Pixel in ∆fi berechnen, die den von 0 verschiedenen Skalierungs- und Wavelet-Koeffizienten entsprechen.
162
10 Kompression und Unterdr¨ uckung von Rauschen
Das soeben beschriebene Differenzschema ist ein Spezialfall einer Bewegungsabsch¨atzung, bei der wir versuchen, einen Frame fi auf der Grundlage M vorhergehender Frames vorherzusagen, fi = P (fi−1 , . . . , fi−M ),
und dann die Wavelet-Transformation auf die Vorhersagefehler ∆fi = fi − fi anwenden. Der Predictor P versucht, Bewegungen im Video zu erkennen, um eine genaue Vermutung in Bezug auf den n¨achsten Frame aufzustellen. Die Wavelet-Transformation eignet sich hierzu gut, denn sie enth¨alt lokale Informationen u ¨ ber die Bilder. Beispiel einer Wavelet-Bildkompression Wir schließen unsere Diskussion der Bildkompression mit einem einfachen Beispiel einer Wavelet-Kompression. Alle Berechnungen erfolgten mit Hilfe des WaveLab-Pakets. Als Testbild haben wir das ber¨ uhmte, aus 512 × 512 Pixel bestehende Lena-Bild verwendet, das ein Standard-Testbild f¨ ur die Bildkompression ist. Wir haben den groben Wavelet-Kompressionsalgorithmus verwendet und die p % gr¨ oßten Waveletkoeffizienten der Amplitude beibehalten. Wir haben das FBI 9/7 Filterpaar verwendet und die Filterbank 5-mal wiederholt. Wir haben vier verschiedene Werte der Kompressionsparameter“ ” verwendet: p = 100 (keine Kompression), p = 10, 4 und 1. Man beachte, daß p nicht exakt dem Kompressionsverh¨ altnis entspricht, da in der Praxis auch die Nullen gespeichert werden m¨ ussen. In den Abbildungen 10.4 und 10.5 zeigen wir die dekomprimierten Bilder. F¨ ur p = 10 besteht kaum ein Unterschied zum Originalbild. F¨ ur p = 4 ist die Bildqualit¨at immer noch gut, aber an den Kanten stellt man ein Ringing“ fest. F¨ ur p = 1 ist die Qualit¨at ” des dekomprimierten Bildes ziemlich schwach.
10.2 Denoising Wir nehmen an, daß ein Signal f (t) auf dem Einheitsintervall [0, 1] an den Punkten tk = 2−J k, k = 1, . . . , K = 2J gesampelt ist. Es bezeichne fk = f (tk ) die exakten Sample-Werte. Angenommen, wir haben nur verrauschte Messungen von fk , das heißt, wir haben die Daten yk = fk + σzk . Hier wird vorausgesetzt, daß zk das Gaußsche weiße Rauschen ist, das heißt, es handelt sich um normalverteilte Zufallsvariable mit dem Mittelwert 0 und der Varianz 1. Der Parameter σ ist der Rauschpegel, der im Allgemeinen unbekannt ist und anhand der Daten gesch¨ atzt werden muß. Wir m¨ ochten f aus den verrauschten Daten rekonstruieren. Anwenden einer orthogonalen diskreten Wavelet-Transformation W liefert W y = W f + σW z.
10.2 Denoising p=100
p=10
Abb. 10.4. Originalbild und Kompression 1:10
163
164
10 Kompression und Unterdr¨ uckung von Rauschen p=4
p=1
Abb. 10.5. Dekomprimierte Bilder mit Kompression 1:25 und 1:100
10.2 Denoising
165
Orthogonale Transformationen u uhren Gaußsches weißes Rauschen in ¨ berf¨ Gaußsches weißes Rauschen. Bezeichnen wir die Wavelet-Koeffizienten von yk mit γj,k und die Wavelet-Koeffizienten von f mit wj,k , dann erhalten wir somit γj,k = wj,k + σ zj,k , wobei zj,k das Gaußsche weiße Rauschen bedeutet. In Abb. 10.6 haben wir die Testfunktion HeaviSine mit und ohne Rauschen graphisch dargestellt. Wir haben auch einen sogenannten spike plot“ ” der exakten und der verrauschten Wavelet-Koeffizienten aufgenommen. Die Feinskalen-Wavelet-Koeffizienten befinden sich im unteren Teil der Abbildung und die Grobskalen-Koeffizienten im oberen Teil. Aus dieser Abbildung geht deutlich hervor, daß es m¨ oglich ist, fast das gesamte Rauschen zu eliminieren, indem man kleine“ Wavelet-Koeffizienten γj,k eliminiert, die meistens ein ” Rauschen enthalten, und dann das Testsignal extrahiert, indem man große ¨ Koeffizienten beibeh¨ alt. Man beachte die Ahnlichkeit zum groben WaveletBildkompressionsalgorithmus. HeavySine
Noisy HeavySine
10
10
5
5
0
0
5
5
10
10
15
0
0.2
0.4
0.6
0.8
1
15
0
Exact wavelet coefficients 3
4
4
5
5
6
6
7
7
8
8
9
9
10
10
0.2
0.4
0.6
0.8
0.4
0.6
0.8
1
Noisy wavelet coefficients
3
0
0.2
1
0
0.2
0.4
0.6
0.8
1
Abb. 10.6. Die Testfunktion HeavySine und ihre Wavelet-Koeffizienten mit und ohne Rauschen
Hard Thresholding und Soft Thresholding Der oben angegebene Algorithmus zur Unterdr¨ uckung von Rauschen l¨aßt sich als Anwendung einer Threshold-Funktion ηT (w) auf die verrauschten Wavelet-
166
10 Kompression und Unterdr¨ uckung von Rauschen
Koeffizienten auffassen. In diesem Fall wenden wir das Hard Thresholding an: w falls |w| ≥ T, (10.1) ηT (w) = 0 andernfalls. Koeffizienten mit einem absoluten Wert, der kleiner als ein Schwellenwert T ist, werden auf 0 geschrumpft und alle anderen Koeffizienten bleiben unge¨ andert. Der Schwellenwert muß in Abh¨ angigkeit vom Rauschpegel σ passend gew¨ ahlt werden. Es gibt auch ein Soft Thresholding, bei dem die ThresholdFunktion folgendermaßen definiert wird: ⎧ ⎪ ⎨w − T falls w ≥ T, (10.2) ηT (w) = w + T falls w ≤ −T, ⎪ ⎩ 0 andernfalls.
Im Unterschied zum Hard Thresholding werden diejenigen Koeffizienten, die einen absoluten Wert gr¨ oßer als T haben, um den Betrag T geschrumpft. Abb. 10.7 zeigt eine graphische Darstellung dieser beiden Threshold-Funktionen. Es sind auch andere Threshold-Funktionen m¨ oglich, zum Beispiel Kombinationen aus Hard Thresholding und Soft Thresholding. Hard thresholding
Soft thresholding
4
4
2
2
0
0
2
2
4
4
2
0
2
4
4
4
2
0
2
4
Abb. 10.7. Hard Thresholding und Soft Thresholding
Algorithmus. (Wavelet-Denoising) 1. Berechne die verrauschten Wavelet-Koeffizienten γj,k , j = j0 , . . . , J − 1 und die verrauschten Skalierungs-Koeffizienten λj0 ,k . √ 2. W¨ ahle T = 2 log N als Schwellenwert. 3. Sch¨ atze die Skalierungs- und Wavelet-Koeffizienten folgendermaßen ab: sj0 ,k = λj0 ,k , w j,k = ηT (γj,k ).
10.2 Denoising
167
4. F¨ uhre Absch¨ atzungen fi durch Anwendung einer inversen Wavelet-Transformation auf sj0 ,k und w j,k durch. ⊓ ⊔
In Abb. 10.8 sieht man das Ergebnis der Anwendung des Wavelet-Denoising auf das Testsignal von Abb. 10.6. Denoising with soft thresholding
Denoising with hard thresholding
10
10
5
5
0
0
5
5
10
10
15
0
0.2
0.4
0.6
0.8
15
1
0
0.2
0.4
0.6
0.8
1
Abb. 10.8. Das Signal nach dem Denoising
Wir bemerken, daß sich die obige Wahl des Schwellenwerts theoretisch rechtfertigen l¨ aßt. Mit diesem Schwellenwert kann man zeigen, daß der WaveletDenoising-Algorithmus in einem gewissen Sinne optimal ist. Ist f irgendeine Absch¨ atzung von f auf der Grundlage von y, dann definieren wir das zu dieser Sch¨ atzung geh¨ orende Risiko als den erwarteten mittleren quadratischen Fehler 4 3K 1 2 E (fk − fk ) . R(f , f ) = K k=1
Denoising mit Soft Thresholding minimiert das Risiko unter der Einschr¨ankung, daß f mit einer hohen Wahrscheinlichkeit mindestens so glatt ist wie f . Wir werden das hier nicht genauer ausf¨ uhren. Stattdessen erw¨ahnen wir nur, daß das Hard Thresholding im Allgemeinen zu einem kleineren mittleren quadratischen Fehler f¨ uhrt als das Soft Thresholding, wobei aber die Sch¨atzung f nicht so glatt ist. Bei praktischen Anwendungen muß eine Feinabstimmung des Schwellenwertes auf die speziell betrachtete Signalklasse erfolgen. Auch der Rauschpegel ist im Allgemeinen unbekannt und muß auf der Grundlage der Daten abgesch¨ atzt werden. Das erfolgt unter Verwendung der Wavelet-Koeffizienten auf der feinsten Skala, da dort der Einfluß des Signals f u ¨blicherweise kleiner ist. Ein Absch¨ atzung des Rauschpegels erfolgt durch σ = Median(|γJ−1,k |)/.6745.
Der Grund f¨ ur die Verwendung einer Median-Absch¨atzung ist die Reduzierung des Einflusses von Ausreißern, das heißt, von verrauschten WaveletKoeffizienten mit einem großen Signalinhalt. Die gleiche Absch¨atzung kann
168
10 Kompression und Unterdr¨ uckung von Rauschen
zur Unterdr¨ uckung von farbigem Rauschen verwendet werden. In diesem Fall werden die skalenabh¨ angigen Schwellenwerte wie folgt gew¨ahlt: ! Tj = 2 log K Median(|γj,k |)/.6745.
Die Wavelet-Koeffizienten werden dann in jeder Skala entsprechend diesen Schwellenwerten berechnet. Denoising von Wavelet-Paketen Die Leistungsf¨ ahigkeit des Denoising-Algorithmus h¨angt davon ab, in welchem Maße die Entropie des Signals bei der Wavelet-Transformation gesenkt wird, das heißt, in welchem Ausmaß die meisten Koeffizienten klein sind und einige wenige Koeffizienten groß sind. Demnach k¨onnte es sich vielleicht lohnen, den Best-Basis-Algorithmus von Kapitel 9 zu verwenden und ein Soft-Thresholding oder Hard-Thresholding auf die optimalen Wavelet-PaketKoeffizienten anzuwenden. Jedoch k¨ onnen wir beispielsweise das EntropieMaß nicht verwenden, denn dieses erfordert die Kenntnis der exakten WaveletKoeffizienten, die wir nicht kennen. Die Berechnung der Entropie der verrauschten Wavelet-Koeffizienten w¨ are sehr irref¨ uhrend – wegen des weißen Rauschens, das eine sehr hohe Entropie hat. Stattdessen kann man als Kostenfunktion eine Absch¨atzung des Risikos R(f, f) verwenden, wobei f die Sch¨ atzung von f ist, die man aus dem Thresholding der verrauschten Wavelet-Paket-Koeffizienten erh¨alt. Eine solche Absch¨ atzung ist f¨ ur das Soft-Thresholding durch Stein’s Unbiased Risk Estimator (10.3)
SURE(c) = σ 2 (K − 2♯{|ck | ≤ T }) +
K
min(c2i , T 2 )
k=1
gegeben, wobei die ck die verrauschten Wavelet-Paket-Koeffizienten in einer speziellen Wavelet-Paket-Basis bezeichnen. Durch Verwendung des BestBasis-Algorithmus mit der Kostenfunktion SURE l¨aßt sich das Denoising in gewissen F¨ allen verbessern.
10.3 Bemerkungen ¨ Der Ubersichtsartikel Jawerth et al. [17] ist ein guter Ausgangspunkt f¨ ur das weitere Studium der Wavelet Bild- und Video-Kompression. Das Buch von Nguyen & Strang [27] enth¨ alt eine ausf¨ uhrliche Diskussion der verschiedenen Aspekte der Bildkompression, wie zum Beispiel Quantisierung, Entropie-Codierung, Randerweiterung und Filterkonstruktion. Man findet hier auch Vergleiche zwischen der Wavelet-Bildkompression und dem JPEGKompressionsalgorithmus.
10.3 Bemerkungen
169
¨ Der Ubersichtsartikel [13] von Donoho enth¨alt eine ausf¨ uhrliche Beschreibung der Wavelet-Denoising-Algorithmen. Der Artikel enth¨alt auch mehrere numerische Beispiele sowohl f¨ ur synthetische Signale als auch f¨ ur reale Signale.
11 Schnelle numerische lineare Algebra
In diesem Kapitel untersuchen wir die numerische L¨osung linearer Gleichungen. Typischerweise sind ein linearer Operator T und eine Funktion f gegeben, und wir suchen die L¨ osung u der Gleichung T u = f. Der lineare Operator T ist entweder ein Differentialoperator oder ein Integraloperator. Die Diskretisierung einer solchen Gleichung f¨ uhrt zu einem linearen Gleichungssystem mit einer großen Anzahl von Unbekannten. Die Diskretisierung beginnt normalerweise mit einer groben Skala oder einem Gitter, das sukzessiv verfeinert wird, was eine Folge von linearen Gleichungen liefert: T j u j = fj . Hier ist Tj eine Matrix oder ¨ aquivalent ein Operator auf einem geeigneten endlichdimensionalen Raum. F¨ ur Differentialgleichungen ist diese Matrix schwachbesetzt und schlechtkonditioniert; f¨ ur Integralgleichungen ist die Matrix vollst¨ andig und in Abh¨ angigkeit vom Operator manchmal schlechtkonditioniert. Heute werden diese Gleichungen mit Hilfe verschiedener iterativer Methoden gel¨ ost. Die effizientesten Methoden sind die Multilevel- oder Multigrid-Methoden. Diese sind ebenfalls ziemlich einfach und nutzen die Tatsache, daß eine Folge von Skalen oder Operatoren vorliegt. Vor kurzem hat man vorgeschlagen, Wavelets sowohl zur L¨osung linearer als auch zur L¨osung nichtlinearer Gleichungen zu verwenden. Wir beschreiben die sogenannte Nichtstandardform eines Operator in einer Wavelet-Basis und sehen uns die Beziehung zu den standardm¨ aßigen Multilevel-Methoden an.
11.1 Modellprobleme Wir beschr¨ anken uns auf elliptische Differential- und Integralgleichungen. Hierunter verstehen wir, daß die Diskretisierungsmatrizen symmetrisch und positiv definit sind.
172
11 Schnelle numerische lineare Algebra
Als Beispiel einer elliptischen Differentialgleichung betrachten wir die eindimensionale Laplace-Gleichung −(a(x)u′ (x))′ = f (x),
(11.1)
0 < x < 1,
u(0) = u(1) = 0,
wobei 0 < a < a(x) < a. Die folgende Integralgleichung ist ein einfacher Typ eines eindimensionalen Grenzschichtpotentials: 1 (11.2) − u(y) log |x − y| dy = f (x), 0 < x < 1. 0
Der Kern heißt logarithmisches Potential und wird im Allgemeinen auf einer Kurve in der Ebene definiert.
11.2 Diskretisierung Wir betrachten die Galerkin-Methode zur Diskretisierung linearer Operatorgleichungen. Es gibt mehrere andere Diskretisierungsmethoden, zum Beispiel die Finite-Differenzen-Methode f¨ ur Differentialgleichungen und die Kollokationsmethode f¨ ur Integralgleichungen. Diese lassen sich als Spezialf¨alle der Galerkin-Methode auffassen, wenn auch mit gewissen Auswahlen f¨ ur Quadrierungsformeln und Funktionenr¨ aume. Auf jeden Fall arbeiten die WaveletMethode und andere Multilevel-Methoden auf die gleiche Weise. Wir nehmen nun an, daß der Operator eine Abbildung T V → V mit einem Hilbertraum V ist, zum Beispiel L2 (R). Die Gleichung T u = f ist dann aquivalent zu dem Problem, ein u ∈ V derart zu finden, daß ¨ T u, v = f, v f¨ ur alle v ∈ V . Das wird als die Variationsformulierung der Operatorgleichung bezeichnet. Wir suchen nun eine Approximation uj von u in einem endlichdimensionalen Unterraum Vj von V . Die Galerkin-Methode ist ein endlichdimensionales Analogon der Variationsformulierung: Man finde uj ∈ Vj derart, daß (11.3)
T uj , vj = f, vj
f¨ ur alle vj ∈ Vj .
N
Wir nehmen weiter an, daß (ϕk )k=1 eine Basis von Vj ist, so daß wir uj =
N
ak ϕk
k=1
f¨ ur gewisse Zahlen ak schreiben k¨ onnen. Setzen wir diesen Ausdruck in GleiN chung (11.3) ein und verwenden wir die Tatsache, daß (ϕk )k=1 eine Basis von aquivalent zu Vj ist, dann ist Gleichung (11.3) ¨
11.2 Diskretisierung N
k=1
173
ak T ϕk , ϕn = f, ϕn f¨ ur n = 1, . . . , N .
Aber das ist ein lineares Gleichungssystem, das wir in Matrizenschreibweise als T j u j = fj schreiben k¨ onnen, wobei Tj eine N × N Matrix mit den Elementen (Tj )n,k = T ϕk , ϕn ist und uj sowie fj Vektoren mit den Komponenten an bzw. f, ϕn sind. In diesem Kapitel verwenden wir – unter geringf¨ ugigem Mißbrauch“ der ” Schreibweise – ein und dasselbe Symbol Tj zur Bezeichnung einer Matrix und ¨ eines Operators auf Vj . Ahnlich bezeichnen wir mit uj sowohl einen Vektor mit N den Komponenten ak als auch die entsprechende Funktion uj = k=1 ak ϕk .
Beispiel 11.1. F¨ ur die Differentialgleichung (11.1) erh¨alt man f¨ ur die Elemente der Matrix Tj (durch partielle Integration) (Tj )n,k =
0
1
ϕ′k (x)ϕ′n (x) dx
und die Komponenten des auf der rechten Seite stehenden Vektors fj sind gleich 1 (fj )n = f (x)ϕn (x) dx. 0
Eine nat¨ urliche Wahl f¨ ur den endlichdimensionalen Raum Vj ist hier der Raum der st¨ uckweise linearen und stetigen Funktionen auf einem Gitter mit Nj = 2j Knoten. Die Basisfunktionen, die diesen Raum aufspannen, sind die Hut-Funktionen mit Tr¨ ager auf zwei Intervallen. Die Matrix Tj ist dann eine Tridiagonalmatrix und demnach handelt es sich um eine schwachbesetzte Matrix. Leider ist die Konditionszahl der Matrix proportional zu Nj2 . Beispiel 11.2. F¨ ur die Integralgleichung (11.2) sind die Elemente der Matrix Tj durch 1 1 (Tj )n,k = − ϕk (x)ϕn (x) log |x − y| dxdy 0
0
gegeben und die Komponenten des auf der rechten Seite stehenden Vektors fj sind durch 1 f (x)ϕn (x) dx (fj )n = 0
gegeben. Es gibt mehrere nat¨ urliche Auswahlm¨oglichkeiten f¨ ur die endlichdimensionalen R¨ aume Vj dieser Gleichung und die einfachste besteht darin, uckweise konstanten Funktionen auf einem Gitter mit f¨ ur Vj den Raum der st¨
174
11 Schnelle numerische lineare Algebra
Nj = 2j Intervallen zu betrachten. Die Basisfunktionen, die diesen Raum aufspannen, sind die Box-Funktionen. Wegen des Faktors log |x − y| im Integranden ist die Matrix Tj in diesem Fall vollst¨andig. Die Konditionszahl der Matrix ist ebenfalls groß (denn der stetige Operator T ist kompakt).
11.3 Die Nichtstandardform Zuerst nehmen wir an, daß eine Matrix (oder ein Operator) TJ auf einem Feinskalen-Unterraum VJ einer Multi-Skalen-Analyse gegeben ist. Wir suchen die L¨ osung uJ des linearen Systems T J u J = fJ . Wir rufen uns in Erinnerung, daß dieses lineare System ¨aquivalent zum Gleichungssystem NJ
k=1
uJ,k T ϕJ,k , ϕJ,n = f, ϕJ,n f¨ ur n = 1, . . . , NJ
NJ ist, wobei uJ = k=1 uJ,k ϕJ,k . Aufgrund der Zerlegung VJ = VJ−1 ⊕ WJ−1 k¨onnen wir uJ auch in der Form NJ−1
uJ =
NJ−1
uJ−1,k ϕJ−1,k +
k=1
wJ−1,k ψJ−1,k
k=1
schreiben und das induziert die folgende Zerlegung NJ−1
k=1
NJ−1
uJ−1,k T ϕJ−1,k , ϕJ−1,n +
NJ−1
k=1
k=1
wJ−1,k T ψJ−1,k , ϕJ−1,n = f, ϕJ−1,n ,
NJ−1
uJ−1,k T ϕJ−1,k , ψJ−1,n +
k=1
wJ−1,k T ψJ−1,k , ψJ−1,n = f, ψJ−1,n
des linearen Systems f¨ ur n = 1, . . . , NJ−1 . Diese Zerlegung folgt, weil die NJ−1 Skalierungsfunktionen (ϕJ−1,k )k=1 eine Basis von VJ−1 bilden und die WaNJ−1 velets (ψJ−1,k )k=1 eine Basis von WJ−1 sind. Wir schreiben das Ganze als Block-Matrix-System auf: fJ−1 uJ−1 TJ−1 CJ−1 . = (11.4) dJ−1 wJ−1 BJ−1 AJ−1 Die Nichtstandardform eines Operators ergibt sich, wenn wir diese Zerlegung rekursiv auf TJ−1 fortsetzen, bis wir einen Grobskalenoperator TL mit L < J
11.4 Die Standardform
175
erhalten. Die Matrizen oder Operatoren der Nichtstandardform sind demnach definiert als Aj : Wj → Wj , Bj : Vj → Wj , Cj : Wj → Vj , Tj : Vj → Vj ,
(Aj )n,k = T ψj,k , ψj,n , (Bj )n,k = T ϕj,k , ψj,n , (Cj )n,k = T ψj,k , ϕj,n , (Tj )n,k = T ϕj,k , ϕj,n .
Wir k¨ onnen deswegen den Operator TJ als den Grobskalenoperator TL plus Folge der Tripel {Aj , Bj , Cj }J−1 j=L darstellen. In einem Multi-Skalen-Kontext bezieht sich die Skala j auf den Unterraum Wj und die darin enthaltenen Funktionen. Wir halten fest, daß der Operator Aj die Interaktion auf der Skala j beschreibt, w¨ahrend die Operatoren Bj und Cj die Interaktion zwischen der Skala j und allen gr¨oberen Skalen beschreibt. Außerdem ist der Operator Tj eine gemittelte Version des Operators Tj+1 . Diese Operatoreigenschaften offenbaren eine bemerkenswerte Eigenschaft der Nichtstandardform: das Entkoppeln der Interaktion zwischen den verschiedenen Skalen. Wichtig ist auch die Bemerkung, daß wir die Nichtstandardform nicht als einfache Block-Matrix darstellen k¨ onnen, das heißt, es handelt sich nicht um die Darstellung des Operators in einer beliebigen Basis. Die Nichtstandardform ist ihrer Natur nach rekursiv und beruht auf der Schachtelungseigenaume einer Multi-Skalen-Analyse. schaft · · · ⊂ V0 ⊂ V1 ⊂ · · · der Unterr¨ Es erweist sich jedoch als praktisch, die Nichtstandardform (einer Diskretisierungsmatrix) als Block-Matrix zu speichern, so wie es auf der linken Seite von Abb. 11.1 dargestellt ist. Diese Block-Matrix l¨aßt sich auch als Resultat der zweidimensionalen diskreten Wavelet-Transformation der Diskretisierungsmatrix TJ auffassen. Vgl. Kapitel 8 u ¨ ber Wavelet-Basen in mehreren Dimensionen und Kapitel 10 zur Bildkompression. Wir haben in diesem Abschnitt lediglich die algebraischen Eigenschaften der Nichtstandardform abgeleitet. Das bedeutet, daß sich das auch auf alle diejenigen Basen (mit Ausnahme der Wavelet-Basen) anwenden l¨aßt, welche die Schachtelungseigenschaft besitzen, zum Beispiel auf hierarchische Basen.
11.4 Die Standardform Die Standardform eines Operators ist nichts anderes, als die Darstellung oder Diskretisierung des Operators in einer Wavelet-Basis. Ist VJ ein Unterraum einer MSA, dann k¨ onnen wir diesen Raum folgendermaßen zerlegen: VJ = VL ⊕ WL ⊕ · · · ⊕ WJ−1 ,
wobei L < J. N
j die R¨aume Wir wissen, daß f¨ ur eine MSA die Skalierungsfunktionen (ϕj,k )k=1 Nj Vj aufspannen, und daß die Wavelets (ψj,k )k=1 die R¨aume Wj aufspannen.
176
11 Schnelle numerische lineare Algebra
Durch einen Basiswechsel l¨ aßt sich die Gleichung TJ uJ = fJ f¨ ur VJ in der folgenden Form als Block-Matrizen-System schreiben: ⎛ ⎜ ⎜ ⎜ ⎝
TL BL,L .. . BJ−1,L
⎞⎛ j ⎞ ⎛ ⎞ uL CL,L . . . CL,J−1 fL ⎜ j ⎟ ⎜ ⎟ AL,L . . . AL,J−1 ⎟ ⎟ ⎜ wL ⎟ ⎜ dL ⎟ ⎟ ⎜ . ⎟ = ⎜ .. ⎟ . .. .. .. ⎠ ⎝ .. ⎠ ⎝ . ⎠ . . . j AJ−1,L . . . AJ−1,J−1 dJ−1 wJ−1
Die Standardform nutzt die hierarchische Struktur einer Multi-Skalen-Analyse nicht vollst¨ andig. Deswegen werden wir die Standardform in diesem Kapitel nicht weiter betrachten.
11.5 Kompression Bis jetzt haben wir nichts u ¨ ber die Struktur der Matrizen Aj , Bj und Cj gesagt. Wavelets haben verschwindende Momente und deswegen sind die betreffenden Matrizen schwachbesetzt. Genauer gesagt, zeigen sie f¨ ur eindimensionale Probleme ein schnelles Abklingverhalten außerhalb der Hauptdiagonale. Sind die Matrizen Tj schlechtkonditioniert, dann sind die Matrizen Aj sogar gutkonditioniert. Das macht die Nichtstandardform zu einer geeigneten Darstellung f¨ ur iterative Methoden. Wir zeigen nun, daß Integraloperatoren in der Nichtstandardform schwachbesetzte Matrizen erzeugen. Hierzu beginnen wir mit einem Integraloperator mit Kern K(x, y): T u(x) =
K(x, y)u(y) dy.
F¨ ur den Moment nehmen wir an, daß der Kern K(x, y) außerhalb der Diagonale x = y glatt und auf dieser singul¨ ar ist. Typische Beispiel f¨ ur derartige Kerne sind: K(x, y) = − log |x − y| 1 K(x, y) = x−y
(logarithmisches Potential), (Hilbert-Transformation).
Aus Gr¨ unden der Einfachheit verwenden wir die Haarsche Wavelet-Basis, die ein verschwindendes Moment hat, das heißt, ψj,k (x) dx = 0. Der Tr¨ ager des Haar-Wavelets ψj,k und der Skalierungsfunktion ϕj,k ist das Intervall Ij,k = 2−j k, 2−j (k + 1) . Wir betrachten nun die Elemente der Maahnlich behandelt): trix Bj (die Matrizen Aj und Cj werden ¨
11.5 Kompression
(Bj )n,k =
Ij,k
177
K(x, y)ψj,n (x)ϕj,k (y) dxdy.
Ij,n
Unter der Voraussetzung |k − n| > 1, so daß K(x, y) auf dem Integrationsbereich glatt ist, k¨ onnen wir eine Taylorentwicklung von K(x, y) um den Mituhren: telpunkt x0 = 2−j (k + 1/2) des Intervalls Ij,k durchf¨ ur ein ξ ∈ Ij,k . K(x, y) = K(x0 , y) + (x − x0 )∂x K(ξ, y) f¨ Das Haar-Wavelet hat ein verschwindendes Moment und deswegen folgt ∂x K(ξ, y)xψj,n (x) dx K(x, y)ψj,n (x) dx = Ij,n
Ij,n
f¨ ur ein ξ ∈ Ij,k . Daher hat man $ $ $ $ $ $ K(x, y)ψj,n (x) dx$ ≤ C |Ij,n | max |∂x K(x, y)| , $ $ Ij,n $ x∈Ij,n
wobei C = xψj,n (x) dx und |Ij,n | = 2−j . Das liefert uns eine Absch¨atzung f¨ ur die Gr¨ oße der Elemente von Bj : |(Bj )n,k | ≤ C2−j max |∂x K(x, y)| dy Ij,k x∈Ij,n
≤ C2
−2j
max
x∈Ij,n ,y∈Ij,k
|∂x K(x, y)| .
Um von hier aus weiterzumachen, m¨ ussen wir das Abklingverhalten des Kerns außerhalb der Diagonale kennen. F¨ ur das logarithmische Potential haben wir |∂x K(x, y)| = |x − y|−1 und hieraus folgt |(Bj )n,k | ≤ C2−j (|k − n| − 1)−1 . Genau dieselbe Absch¨ atzung gilt f¨ ur die Elemente von Cj . F¨ ur die Matrix Aj k¨ onnen wir ebenfalls eine Taylorentwicklung des Kerns in der Variablen y durchf¨ uhren, womit wir sogar ein schnelleres Abklingverhalten der Elemente außerhalb der Diagonale erzielen: |(Aj )n,k | ≤ C2−j (|k − n| − 1)−2 . F¨ ur andere Integraloperatoren gelten a ¨hnliche Absch¨atzungen in Bezug auf das Abklingverhalten außerhalb der Diagonale. Eine gr¨oßere Anzahl der verschwindenden Momente des Wavelets f¨ uhrt ebenfalls zu einer Steigerung des Abklingverhaltens. Tats¨ achlich gibt es eine große Klasse von Integraloperatoren – die sogenannten Calder´on-Zygmund-Operatoren –, f¨ ur die man eine allgemeine Absch¨ atzung beweisen kann. Der Calder´on-Zygmund-Operator ist
178
11 Schnelle numerische lineare Algebra
ein beschr¨ ankter Integraloperator auf L2 (R), wobei der Kern die folgenden Absch¨ atzungen erf¨ ullt: −1
|K(x, y)| ≤ C0 |x − y|
,
−N −1
|∂x K + ∂y K| ≤ C1 |x − y|
.
F¨ ur einen solchen Operator kann man |(Aj )n,k | + |(Bj )n,k | + |(Cj )n,k | ≤ CN 2−j (|k − n| + 1)−N −1 beweisen, falls das Wavelet N verschwindende Momente hat. Beispiel 11.3. Auf der rechten Seite von Abb. 11.1 haben wir alle diejenigen Matrixelemente der Bl¨ ocke Aj , Bj und Cj markiert, die eine kleine Schwelle u ¨ berschreiten. Wie man sieht, ergeben sich gute banddiagonale Approximationen dieser Matrizen. Die Matrix ist die Nichstandard-Darstellung des logarithmischen Potentials in der Haarschen Wavelet-Basis. ⊓ ⊔
TJ −2
BJ −2 BJ −1
CJ −2 AJ −2
CJ −1
AJ −1
Abb. 11.1. Die Nichstandardform des logarithmischen Potentials
11.6 Multilevel-Iterationsmethoden Wir betrachten nun eine Methode der iterativen L¨osung eines Gleichungssystems auf der Grundlage der Nichtstandardform. Die Methode ist einem Multigrid-V-Zyklus ziemlich a ¨hnlich. Wir setzen an dieser Stelle voraus, daß der Leser mit den grundlegenden Iterationsmethoden vertraut ist, zum Beispiel mit den Verfahren von Jacobi und Gauß-Seidel. Dar¨ uber hinaus ist die Kenntnis der Multigrid-Methode erforderlich, um den Zusammenhang mit unserer wavelet-basierten Methode zu verstehen. Wir verweisen den Leser auf die Literaturstellen in den Bemerkungen am Kapitelende.
11.7 Bemerkungen
179
Wir beginnen mit einem Vergleich zwischen den Konditionszahlen der Matrizen Tj und Aj . In Tabelle 11.1 sind die Konditionszahlen f¨ ur die Diskretisierung des logarithmischen Potentials in der Haar-Basis angegeben. Hier bezeichnet N die Anzahl der Basisfunktionen in Vj . Wir sehen, daß die Konditionszahl von Tj linear mit der Anzahl der Unbekannten N w¨achst. Andeur alle j beschr¨ankt und liegt bei rerseits bleibt die Konditionszahl von Aj f¨ ungef¨ ahr 2. Das legt es nahe, daß wir mit den Matrizen Aj iterieren, das heißt, auf den R¨ aumen Wj . Tabelle 11.1. Konditionszahlen f¨ ur das logarithmische Potential j 5 6 7 8
N κ(Tj ) κ(Aj ) 32 57 1.94 64 115 1.97 128 230 1.98 256 460 1.99
Wir schreiben zun¨ achst die Block-Matrix-Form (11.4) von TJ uJ = fJ folgendermaßen: AJ−1 wJ−1 = dJ−1 − BJ−1 uJ−1 , TJ−1 uJ−1 = fJ−1 − CJ−1 wJ−1 . Inspiriert durch die Multigrid-Methode l¨ osen wir zun¨achst die erste Gleichung f¨ ur wJ−1 , wobei wir approximativ einen einfachen Smoother verwenden. Das sollte gut funktionieren, den AJ−1 ist gutkonditioniert. Als n¨achstes aktualisieren wir die rechte Seite der zweiten Gleichung und l¨osen sie f¨ ur uJ−1 . Da jetzt TJ−1 immer noch schlechtkonditioniert ist, l¨osen wir diese Gleichung rekursiv, indem wir TJ−1 in einem weiteren Schritt zerlegen. Wenn wir einen hinreichend grobskaligen Operator TL erreicht haben, dann l¨osen wir die Gleichung f¨ ur uL exakt. Abschließend aktualisieren wir die rechte Seite der ersten Gleichung und wiederholen die obengenannten Schritte. Auf dieser Grundlage formulieren wir den in Abb. 11.2 angegebenen Rekursionsalgorithmus. Die Anzahl K der Loops ist klein, typischerweise ist (0) ost Aj wj = dj approximativ unsie kleiner als 5. Die Funktion Iter(wj , dj ) l¨ ter Verwendung eines einfachen Iterationsverfahrens mit dem Ausgangsvektor (0) wj .
11.7 Bemerkungen Die Nichtstandardform eines Operator wurde von Beylkin, Coifman und Rokhlin definiert, vgl. [4] (Fast Wavelet Transforms and Numerical Algo-
180
11 Schnelle numerische lineare Algebra (0)
function uj = Solve(uj , fj ) if j = L Solve Tj uj = fj using Gaussian elimination else (0) (0) (0) Project uj onto Vj−1 and Wj−1 to get uj−1 and wj−1 Project fj onto Vj−1 and Wj−1 to get fj−1 and dj−1 for k = 1, . . . , K (k) (k−1) (k−1) uj−1 = Solve(uj−1 , fj−1 − Cj−1 wj−1 ) (k) (k−1) (k) wj−1 = Iter(wj−1 , dj−1 − Bj−1 uj−1 ) end (K) (K) uj = uj−1 + wj−1 end Abb. 11.2. Die Wavelet-Multigrid-Methode
rithms I ). Man kann sie als eine Verallgemeinerung der Fast Multipole Method (FMM) zur Berechnung der Potential-Wechselwirkungen gem¨aß Greengard und Rokhlin auffassen (vgl. A Fast Algorithm for Particle Simulations [15]). Weitere Methoden zur L¨ osung von Gleichungen in der Nichtstandardform wurden haupts¨ achlich von Beylkin entwickelt (vgl. zum Beispiel Wavelets and Fast Numerical Algorithms [3]). Eine Einf¨ uhrung in Multigrid-Methoden und Iterationsverfahren findet man in dem Buch A Multigrid Tutorial [5] von Briggs.
12 Funktionalanalysis
Funktionalanalysis bedeutet in diesem Kapitel die Untersuchung der globalen Differenzierbarkeit von Funktionen, ausgedr¨ uckt durch ihre Ableitungen, die etwa als quadratisch integrierbar (oder als Elemente gewisser Banachr¨aume) vorausgesetzt werden. Die entsprechenden Wavelet-Beschreibungen erfolgen durch orthogonale MSA-Wavelets (Kapitel 4). Wavelet-Darstellungen eignen sich auch gut zur Beschreibung lokaler Differenzierbarkeitseigenschaften von Funktionen. Jedoch werden wir diesbez¨ uglich lediglich Hinweise in den Anmerkungen am Kapitelende geben.
12.1 Differenzierbarkeit und Wavelet-Darstellung Die Differenzierbarkeitseigenschaften einer Funktion lassen sich durch das Verhalten ihrer Fourier-Transformierten f¨ ur große Werte der Frequenzvariablen ausdr¨ ucken. Analog lassen sich diese Eigenschaften durch das Verhalten der Wavelet-Koeffizienten in kleinen Skalen ausdr¨ ucken. Um die Einf¨ uhrung zus¨ atzlicher mathematischer Techniken (Paley-Littlewood-Zerlegungen von Lp ) zu vermeiden, betrachten wir haupts¨achlich L2 , das heißt, p = 2. Die Norm in Lp wird definiert durch f p :=
∞
−∞
p
|f (t)| dt
1/p
.
Dar¨ uber hinaus betrachten wir nur orthogonale Wavelets, die zu einer MSA geh¨ oren und außerhalb eines beschr¨ ankten Intervalls verschwinden. Wir rufen uns in Erinnerung, daß man f¨ ur eine 2π-periodische Funktion f ∈ L2 (0, 2π) mit f (α) ∈ L2 (0, 2π) zeigen kann, daß f¨ ur die FourierKoeffizienten cn folgendes gilt (Parseval): (12.1)
1 f (α) 22 = |nα cn |2 . 2π n =0
182
12 Funktionalanalysis
Wir kommen nun zum Hauptergebnis dieses Kapitels. Der folgende Satz hat eine Verallgemeinerung auf Lp , 1 < p < ∞, die wir unten zitieren. Jedoch ist das entscheidende Lemma im Wesentlichen dasselbe wie f¨ ur p = 2. Satz 12.1. Unter den gleichen Voraussetzungen f¨ ur die jetzt auf R definierte Funktion f , das heißt f ∈ L2 (R) mit f (α) ∈ L2 (R), zeigen wir, daß f¨ ur die Wavelet-Koeffizienten wj,k (DN ψ ∈ L2 ) die Beziehung f (α) 22 ∼ |2αj wj,k |2 (0 ≤ α ≤ N ) j,k
gilt, falls xα ψ(x)dx = 0 f¨ ur 0 ≤ α ≤ N . Hier bedeutet ∼, daß der Quotient der beiden Ausdr¨ ucke von unten und von oben durch positive Konstanten beschr¨ankt ist, die nur vom Wavelet ψ abh¨angen. ⊓ ⊔ Der Beweis beruht auf einem Lemma, das mit den sogenannten S¨atzen von Bernstein und Jackson zusammenh¨ angt. Der Satz von Bernstein dr¨ uckt das Verhalten der Ableitungen einer Funktion durch die Funktion und ihren Spektralgehalt aus. Der Satz von Jackson beschreibt die Spektralapproximierbarkeit einer Funktion durch ihre Differenzierbarkeit. Lemma: F¨ ur f (x) =
k
w0,k ψ(x − k), (Dα f ∈ L2 ), (0 ≤ α ≤ N ), gilt Dα f 22 ∼ f 22
Beweis des Satzes: Man wende das Lemma mit f (2−j x) an, um Dα f 22 ∼ 22jα k |w0,k |2 g(x) =j/2 zu erhalten, falls f (x) = k w0,k 2 ψ(2j x − k). Damit ist der Satz bewiesen. (Im Allgemeinen bleibt nur eine Summation u ¨ber den Dilatationsindex j und die entsprechenden Unterr¨ aume sind orthogonal.) ⊓ ⊔ Beweis des Lemmas: Man beginne mit Dα f (x)= k w0,k Dα ψ(x−k) und beachte, daß |Dα f (x)|2 ≤ α 2 α k |D ψ(x − k)| aufgrund der Cauchy-Schwarzschen k |w0,k | |D ψ(x − k)| Ungleichung gilt. Integration liefert Dα f 22 ≤ sup |Dα ψ(x − k)| |w0,k |2 |Dα ψ(x − k)|dx ≤ C |w0,k |2 . x
k
k
k
Der Beweis der verbleibenden Ungleichung beruht auf der Existenz einer Funktion Ψ (x), die außerhalb eines beschr¨ ankten Intervalls verschwindet, so daß Dα Ψ = ψ mit festem α ≤ N . Unter dieser Voraussetzung haben wir (Integralformel)
12.1 Differenzierbarkeit und Wavelet-Darstellung
f (x) =
k
w0,k ψ(x − k) =
= (−1)α
k
k
183
f (y)ψ(y − k) dy ψ(x − k)
Dα f (y)Ψ (y − k) dy ψ(x − k)
und f 22 =
|
k
Dα f (y)Ψ (y − k)ψ(x − k)|2 dxdy ≤
≤ CDα f 22 . Es bleibt zu zeigen, daß Ψ existiert. Wir m¨ ussen das nur f¨ ur N = 1 beweisen x und k¨ onnen dann Induktion verwenden. Man setzte Ψ (x) = −∞ ψ(t)dt = ∞ − x ψ(t)dt. Dann verschwindet Ψ offensichtlichaußerhalb eines beschr¨ankten Intervalls: Ψ ′ = ψ. Abschließend erh¨ alt man Ψ (x)dx = − xΨ ′ (x)dx = − xψ(x)dx = 0 durch partielle Integration, womit sich nun ein Induktionsschluß anwenden l¨ aßt. ⊓ ⊔ Das allgemeine Resultat mit dem gleichen Wavelet ψ ist (1 < p < ∞, Dα f ∈ Lp , 0 ≤ α ≤ N ): |2jα wj,k 2j/2 χ[0,1] (2j · −k)|2 )1/2 p , Dfα p ∼ ( k
angt mit der klassischen Paley-Littlewoodwobei wj,k = f, ψj,k . Das h¨ Zerlegung |μj ∗ f |2 )1/2 p f p ∼ ( j
(f ∈ Lp , 1 < p < ∞) zusammen, wo zum Beispiel μ ˆ j (ω) = μ ˆ(2−j ω) ≥ 0 gilt, μ ˆ unendlich oft differenzierbar ist und außerhalb der Menge {ω; π/2 ≤ |ω| ≤ 2π} ˆ(2−j ω) = 1 f¨ ur ω = 0 gilt. verschwindet sowie j μ Es gibt auch Ergebnisse, die zeigen, daß gewisse Wavelet-Basen unbedingt in Lp ( 1 < p < ∞) sind, das heißt, im Hardy-Raum H 1 , der L1 ersetzt; ebenso sind diese Wavelet-Basen im Raum BM O (Raum der Funktionen mit beschr¨ ankter mittlerer Oszillation)1 , der L∞ ersetzt, unbedingt. Der Fall L2 wird im vorliegenden Kapitel behandelt: die Parseval-Relation zeigt, daß die Wavelet-Basen dann unbedingt sind, denn die Wavelet-Koeffizienten gehen nur mit ihrem absoluten Wert ein. Das bedeutet, daß die (L2 -) Konvergenz der Wavelet-Entwicklung in dem Sinne unbedingt ist, daß sie zum Beispiel nicht von der Reihenfolge der Summation oder von den Vorzeichen der Koeffizienten abh¨ angt. Das steht beispielsweise im Gegensatz zur Basis einωt n f¨ ur Lp (0, 2π), p = 2, die nicht unbedingt ist. 1
BMO = bounded mean oscillation.
184
12 Funktionalanalysis
¨ Ubungsaufgaben zu Abschnitt 12.1 ¨ Ubungsaufgabe 12.1. Formulieren und beweisen Sie in R das Analogon der Identit¨ at 12.1. ¨ Ubungsaufgabe 12.2. Beweisen Sie, daß f¨ ur f (x) = k w0,k ψ(x − k) mit ψ wie in Satz 12.1 die Beziehung Dα f p ∼ f p
(0 ≤ α ≤ N )
gilt. F¨ uhren Sie den Beweis mit Hilfe der H¨ olderschen Ungleichung $ ∞ $ $ $ $ f (t)g(t) dt$$ ≤ f p gq (1/p + 1/q = 1, 1 ≤ p ≤ ∞), $ −∞
wobei die Cauchy-Schwarzsche Ungleichung f¨ ur p = 2 angewendet wurde und w0,k ausgeschrieben wird. ¨ Ubungsaufgabe 12.3. Setzen Sie das Lemma von Bernstein-Jackson zur folgenden Approximationsaussage in Abschnitt 4.7 von Kapitel 4 in Beziehung: f − fj 2 ≤ C 2−jα Dα f 2 ,
wobei fj die Projektion auf Vj bezeichnet, das heißt, die von den Funktionen ulle. {ϕj,k }k aufgespannte lineare H¨
12.2 Bemerkungen Weiteres Material findet man in den B¨ uchern von Meyer [23], Kahane & Lemari´e [21] und Hern´ andez & Weiss [16]. Wavelets und lokale Regularit¨at werden in einer von Andersson [2] geschriebenen Dissertation behandelt, die auch viele Literaturhinweise enth¨ alt.
13 Ein Analysewerkzeug
Wir geben zwei Beispiele daf¨ ur, wie die kontinuierliche Wavelet-Transformation aus Kapitel 7 in der Signalverarbeitung verwendet werden kann und geben auch einen algorithmischen Shortcut f¨ ur den Fall an, daß das Wavelet mit einer Multi-Skalen-Analyse zusammenh¨ angt (vgl. Kapitel 4).
13.1 Zwei Beispiele Wir erinnern uns an die Definition der kontinuierlichen Wavelet-Transformation ∞ t−b f (t)ψ Wψ f (a, b) = |a|−1/2 dt, a −∞ unden der Einfachheit eine wobei f ∈ L1 , ψ ∈ L1 ∩ L2 , a = 0 und ψ aus Gr¨ reellwertige Funktion ist, die folgende Bedingung erf¨ ullt: ∞ 2 ˆ |ψ(ξ)| dξ/ξ < ∞. 0
Beispiel 13.1. In diesem Beispiel geben wir die kontinuierliche Wavelet-Transformation Chirp an. Das komplexe Morlet-Wavelet ist in Abb. 13.1 zu sehen: 2
ψ(t) = eiω0 t e−t /2 2 ψ(ω) = (2π)1/2 e−(ω−ω0 ) /2 ,
wobei jetzt nur ψ(0) ≈ 0 und ω0 = 5, 336. Diese Wahl von ω0 l¨aßt den Realteil Reψ von ψ seinen ersten Maximalwert außerhalb des Ursprungs annehmen, wobei die Gr¨ oße dieses Maximalwerts die H¨ alfte des absoluten Betrages ist. Um ψ(0) = 0 zu machen, kann eine kleine Korrektur erforderlich sein, zum Beispiel −(2π)1/2 exp(−ω 2 /2 − ω02 /2).)
186
13 Ein Analysewerkzeug 3
1
2.5
0.5
2
0
1.5 1
0.5
0.5
1
0
5
0
5
0
5
10
b Abb. 13.1. Links: Reψ(t) (punktiert), Imψ(t) (gestrichelt). Rechts: ψ(ω)
1
2 3 log2(1/a)
0.5 0
4 5 6
0.5 7 1 0
0.5 t
1
8 0
0.5 b
1
Abb. 13.2. Links: cos(300t3 ) exp(−4t2 ). Rechts: Die Transformation
Als Chirp wird die Funktion cos(300t3 ) exp(−4t2 ) gew¨ahlt. Diese ist zusammen mit ihrer Transformation1 zu sehen. Beispiel 13.2. In den Abbildungen 13.3, 13.4 und 13.52 sieht man die kontinuierliche Wavelet-Transformation dreier verschiedener Signale, die Messungen im Geschwindigkeitsfeld einer Fl¨ ussigkeit darstellen. Das Wavelet ist ein komplexes Morlet-Wavelet, das in Abb. 13.1 zu sehen ist. Die Abbildungen sind in Bezug auf ihre Legenden um eine Vierteldrehung in Uhrzeigerrichtung zu betrachten. Zwecks leichterer Referenz sind die Signale oben (sic! ) zu sehen.
1
2
Die Transformation wurde mit Hilfe von Matlab unter Verwendung des MorletWavelets (Abb. 13.2) von Wavelab berechnet. Diese drei Abbildungen wurden von C.-F. Stein mit Hilfe eines Programm erzeugt, das M. Holschneider geschrieben und zur Verf¨ ugung gestellt hat.
13.1 Zwei Beispiele
187
Auf der horizontalen Achse befindet sich der Parameter b und auf der vertikalen Achse der Parameter a. Diese Parameter k¨onnen als Zeit bzw. Frequenz aufgefaßt werden (aber gewiß nicht im exakten Sinne).
Abb. 13.3. Eine streifige Struktur
188
13 Ein Analysewerkzeug
Abb. 13.4. Ein turbulenter Fleck
13.1 Zwei Beispiele
Abb. 13.5. Ein Wellenpaket
189
190
13 Ein Analysewerkzeug
13.2 Ein numerischer Sometime Shortcut“ ” Wird die kontinuierliche Wavelet-Transformation ∞ t−b f (t)ψ Wψ f (a, b) = |a|−1/2 dt a −∞ numerisch implementiert, dann spielt dabei u ¨ blicherweise der FFT-Algorithmus (Fast Fourier Transform Algorithm) eine Rolle. H¨angt jedoch das Wavelet ψ mit einer MSA zusammen (Kapitel 4), dann besteht die M¨oglichkeit, diese Struktur folgendermaßen zu nutzen. Man beachte, daß f¨ ur a = 2−j , b = 2−j k die Beziehung ∞ wj,k := Wψ f (2−j , 2−j k) = f (t)2j/2 ψ(2j t − k) dt −∞
gilt, daß heißt, es handelt sich um die in Kapitel 4 definierten WaveletKoeffizienten. Beginnt man also mit einer Berechnung der Projektion auf der feinsten interessierenden Skala, etwa mit dem Raum V0 der MSA, dann k¨onnen wir so verfahren, wie mit dem diskreten Wavelet-Algorithmus in Kapitel 4. Diese Projektion ist dann ∞
s0,k :=
−∞
f (t)φ(t − k) dt.
13.3 Bemerkungen Eine neue Anwendung der kontinuierlichen Wavelet-Transformation auf die Datenanalyse der Polarbewegung, das Chandler Wobble, findet man Gibert et al. [14]. Zum weiteren Studium empfehlen wir die B¨ ucher von Holschneider [18] und Kahane & Lemari´e [21].
14 Feature-Extraktion
Bei den meisten Problemen der Signal- und Bildklassifikation ist die Dimension des Eingabesignals sehr groß. Beispielsweise hat ein typisches Segment eines Audiosignals einige Tausend Samples und die u ¨bliche Bildgr¨oße von 512 × 512 Pixel. Das macht es praktisch unm¨ oglich, einen traditionellen Klassifikator, wie zum Beispiel die lineare Diskriminantenanalyse (Linear Discriminant Analysis, LDA) direkt auf das Eingabesignal anzuwenden. Deswegen zerlegt man einen Klassifikator gew¨ ohnlich in zwei Bestandteile. Zuerst bildet man das Eingabesignal in einen niedrigerdimensionalen Raum ab, der die meisten relevanten Features der verschiedenen Klassen m¨oglicher Eingabesignale enth¨ alt. Danach werden diese Features in einen traditionellen Klassifikator – zum Beispiel in eine LDA – oder ein k¨ unstliches neuronales Netz (Artificial Neural Net, ANN) eingespeist. Die meiste Literatur zur Klassifikation konzentriert sich auf die Eigenschaften des zweiten Schrittes. Wir geben eine ziemlich neue wavelet-basierte Technik f¨ ur den ersten Schritt an, den sogenannten Feature-Extraktor. Diese Technik erweitert das Eingabesignal zu einem großen Zeit-Frequenz-W¨orterbuch, das zum Beispiel aus Wavelet-Paketen und lokalen trigonometrischen Basen besteht. Danach ermittelt diese Technik mit Hilfe des Best-Basis-Algorithmus diejenige Basis, welche die verschiedenen Klassen von Eingabesignalen am besten unterscheidet. Wir bezeichnen diese Basen als lokale Diskrimimantenbasen.
14.1 Der Klassifikator Wir beginnen mit einigen Bemerkungen zur Notation. Es sei X die Menge alle Eingabesignale und Y die entsprechende Menge der Klassenlabel. Zur weiteren Vereinfachung der Dinge nehmen wir an, daß wir nur zwei Klassen haben: Y = {1, 2}. F¨ ur den Eingabesignalraum haben wir X ⊂ Rn und die Zahl n hat – wie wir bereits bemerkt hatten – typischerweise eine Gr¨oßenordnung von 103 -106 . Eine Funktion d : X → Y, die jedem Eingabesignal
192
14 Feature-Extraktion
x ∈ X ein Klassenlabel zuordnet, wird als Klassifikator bezeichnet. Wir setzen desweiteren voraus, daß wir Zugang zu einer Trainingsmenge haben, die aus N Paaren von Eingabesignalen und den entsprechenden Klassenlabel besteht: {(x1 , y1 ), . . . , (xN , yN )}. Es sei N = N1 + N2 , wobei N1 und N2 die Anzahl der Signale der Klasse 1 bzw. der Klasse 2 bezeichnet. Wir verwenden (y) die Schreibweise xi zur Bezeichnung des Sachverhaltes, daß ein Signal der Trainingsmenge zur Klasse y geh¨ ort. Es sei P (A, y) eine Wahrscheinlichkeitsverteilung auf X × Y, wobei A ⊂ X und y ∈ Y. Das bedeutet, daß P (A, y) = P (X ∈ A, Y = y) = πy P (X ∈ A|Y = y), wobei X ∈ X und Y ∈ Y Zufallsvariable sind. Hier ist πy die AprioriWahrscheinlichkeit der Klasse y. Diese Wahrscheinlichkeit wird u ¨ blicherweise atzt. Der optimale Klassifikator f¨ ur dieses als πy = Ny /N , y = 1, 2 gesch¨ Setup ist der Bayes-Klassifikator. Um diesen zu erhalten, ben¨otigen wir eine Absch¨ atzung von P (A, y). Die Anzahl der Trainings-Samples ist jedoch klein im Vergleich zur Gr¨ oße der Eingabesignale, das heißt, N ≪ n. Das macht es unm¨ oglich, P (A, y) in der Praxis zuverl¨ assig abzusch¨atzen. Feature-Extraktion l¨ ost das Problems einer großen Dimensionalit¨at des Eingabesignalraumes. Es ist wichtig, die relevanten Features des Signals zu Klassifikationszwecken zu extrahieren. In der Praxis ist bekannt, daß multivariate Daten in Rn fast niemals n-dimensional sind. Vielmehr zeigen die Daten eine intrinsische Struktur, die eine niedrigere Dimension hat. Deswegen verwendet man oft die folgende Methode, um den Klassifikator in zwei Funktionen aufzuteilen: d = g ◦ f. Hier ist f : X → F ein Feature-Extraktor, der den Eingabesignalraum in einen Feature-Raum F ⊂ Rm von niedrigerer Dimension abbildet. Die Dimension m des Feature-Raumes ist typischerweise mindestens zehnmal niedriger als die Dimension n des Eingabesignalraumes. Nach dem Feature-Extraktor folgt ein traditioneller Klassifikator g : F → Y, der gut funktionieren sollte, falls die verschiedenen Signalklassen im Feature-Raum wohlsepariert sind. Wir beschreiben ein automatisches Verfahren zur Konstruktion des FeatureExtraktor bei gegebenen Trainingsdaten.
14.2 Lokale Diskriminantenbasen Es sei D ein Zeit-Frequenz-W¨ orterbuch, das aus einer Familie von Basisvekbesteht. Besteht dieses W¨ orterbuch zum Beispiel aus allen Batoren {ψj }M j=1 sisvektoren einer gegebenen Wavelet-Paket-Basis, dann ist M = n(1 + log2 n). Das W¨ orterbuch enth¨ alt mit seinen Basisvektoren eine riesige Anzahl (> 2n ) orthonormaler Basen von Rn (vgl. Kapitel 9). Ein Wavelet-Paket-W¨orterbuch sollte sich gut f¨ ur Signalklassifikationszwecke eignen, da die Diskriminantenfeatures wahrscheinlich im Zeit-Frequenz-Bereich separiert sind, aber nicht
14.3 Diskriminantenmaße
193
notwendigerweise im Zeitbereich (oder im Raumbereich). Bei einem gegebenen Signal und einer gegebenen Kostenfunktion k¨onnen wir das Signal mit Hilfe des Best-Basis-Algorithmus zu einer optimalen Basis erweitern. F¨ ur Anwendungen in der Signal- und Bildkompression k¨onnte die Kostenfunktion die Entropie der Entwicklungskoeffizienten einer gegebenen Basis sein. Unser Ziel besteht darin, unterschiedliche Klassen von Eingabesignalen zu separieren und wir werden weitere Kostenfunktionen verwenden, um zwischen den charakteristischen Eigenschaften der verschiedenen Klassen zu unterscheiden. Zu Klassifikationszwecken bevorzugen wir die Verwendung des Begriffes Diskriminantenfunktion anstelle von Kostenfunktion und das W¨orterbuch der Basen wird als LDB-W¨ orterbuch1 bezeichnet. Bevor wir diskutieren, wie man die Kostenfunktion zur Unterscheidung zwischen verschiedenen Basen w¨ ahlt, wollen wir annehmen, daß wir die beste Basis bereits berechnet haben. Wir bilden dann eine orthonormale n × n Matrix W = ψ1 . . . ψn , wobei ψ1 , . . . , ψn die Basisvektoren der besten Basis sind. Wendet man die Transponierte dieser Matrix auf ein Eingabesignal x an, dann liefert das die Signalkoordinaten in der besten Basis (wir betrachten x und die ψi ’s als Spaltenvektoren in Rn ) ⎛ t ⎞ ⎛ ⎞ ψ1 x x, ψ1 ⎜ ⎟ ⎟ ⎜ W t x = ⎝ ... ⎠ = ⎝ ... ⎠ . ψn t x
x, ψn
Der LDB-Klassifikator wird definiert als
d = g ◦ (Pm W t ), wobei die m × n Matrix Pm ein Feature-Selektor ist, der die wichtigsten m (< n) Features (Koordinaten) in der besten Basis ausw¨ahlt.
14.3 Diskriminantenmaße Das LDB-W¨ orterbuch D l¨ aßt sich auch als die Menge aller m¨oglichen orthonormalen Basen darstellen, die mit Hilfe der Basisfunktionen {ψj }M j=1 konstruiert werden k¨ onnen. Es bezeichne B eine solche Basis und es sei ∆(B) eine Diskriminantenfunktion, welche die F¨ ahigkeit der Basis B mißt, die verschiedenen Klassen von Eingabesignalen zu separieren. Als optimale Basis W wird dann diejenige Basis gew¨ ahlt, welche die Diskriminantenfunktion W = argmax ∆(B) B∈D 1
LDB = local discriminant bases.
194
14 Feature-Extraktion
maximiert. Um ∆ zu definieren, beginnen wir mit der Definition eines Diskriminantenmaßes f¨ ur jeden Basis-Einheitsvektor ψi ∈ D. Es bezeichne X ∈ X einen zuf¨ alligen Sample-Wert des Eingabesignalraumes und es sei Zi = X, ψi . (y)
Dann ist Zi ebenfalls eine Zufallsvariable und wir schreiben mitunter Zi , um hervorzuheben, daß die Zufallsvariable X in der Klasse y liegt. Wir sind nun an der Wahrscheinlichkeitsdichtefunktion (WDF) von Zi f¨ ur jede Klasse (y) y interessiert und wir bezeichnen diese Funktion mit qi (z). Wir k¨onnen diese Wahrscheinlichkeitsdichtefunktionen sch¨ atzen, indem wir die verf¨ ugbaren Signale der Trainingsmenge zu den Basisfunktionen des W¨orterbuchs erweitern. (y) (y) aßt sich dann durch ein WDF-Sch¨atzverfahren ur qi l¨ Eine Sch¨ atzung qi f¨ berechnen, die u.a. als ASH-Technik2 bezeichnet wird. (2) (1) Haben wir die Wahrscheinlichkeitsdichtefunktionen qi und qi f¨ ur die Klassen 1 und 2 gesch¨ atzt, dann ben¨ otigen wir noch eine Abstandsfunktion (1) (2) ahigkeit der Richtung ψi mißt, die beiden Klassen zu δ( qi , qi ), welche die F¨ separieren. Sind die beiden Wahrscheinlichkeitsdichtefunktionen ¨ahnlich, dann sollte δ nahe bei Null liegen. Die beste Richtung ist diejenige, bei der die beiden Wahrscheinlichkeitsdichtefunktionen in Bezug aufeinander m¨oglichst unterschiedlich aussehen. Bei dieser Richtung sollte δ einen maximalen positiven Wert erreichen. Es gibt verschiedene M¨ oglichkeiten, die Diskrepanz zwischen zwei Wahrscheinlichkeitsdichtefunktionen zu messen. Wir nennen hier die folgenden M¨ oglichkeiten: ! ! (Hellinger-Abstand) δ(p, q) = ( p(z) − q(z))2 dz δ(p, q) =
2
(p(z) − q(z)) dz
1/2
(ℓ2 -Abstand)
Die Wahl der Abstandsfunktion h¨ angt nat¨ urlich vom jeweiligen Problem ab. Wenn wir nun wissen, wie man eine Diskriminantenfunktion f¨ ur einen einzigen Basisvektor konstruiert, dann m¨ ussen wir eine solche Funktion f¨ ur eine vollst¨ andige Basis B ∈ D konstruieren. Es sei B = ψ1 . . . ψn vorausgesetzt und man definiere die Diskriminantenwerte δi f¨ ur die Richtung ψi als (1)
(2)
δi = δ( qi , qi ).
Ferner sei {δ(i) } die absteigende Anordnung von {δi }, daß heißt, die in abnehmender Ordnung sortierten Diskriminantenwerte. Die Diskriminantenfunktion der Basis B wird nun als die Summe der k (< n) gr¨oßten Diskriminantenwerte definiert: k ∆(B) = δ(i) . i=1
2
ASH = averaged shifted histogram.
14.5 Bemerkungen
195
Eine M¨ oglichkeit k¨ onnte darin bestehen, k = m zu setzen, das heißt, gleich der Dimension des Feature-Raumes. Das ist jedoch nicht notwendig und die Wahl von k bedarf einer weiteren Untersuchung.
14.4 Der LDB-Algorithmus Wir schließen die obige Diskussion mit der Formulierung des nachstehenden Algorithmus. Algorithmus. (LDB-Algorithmus) 1. Erweitere alle Signale der Trainingsmenge zum Zeit-Frequenz-W¨orterbuch D. (y) 2. Sch¨ atze die projizierten Wahrscheinlichkeitsdichtefunktionen qi f¨ ur jeden Basisvektor ψi und jede Klasse y. 3. Berechne den Diskriminantenwert δi eines jeden Basisvektors ψi des W¨ orterbuches. 4. W¨ ahle die beste Basis als W = argmax ∆(B), wobei ∆(B) = ki=1 δ(i) B∈D
die Summe der k gr¨ oßten Diskriminantengr¨oßen der Basis B ist. 5. Definiere die Matrix Pm so, daß sie die m gr¨oßten Diskriminantenwerte ausw¨ ahlt. 6. Konstruiere den Klassifikator g auf den m Features auf der Grundlage des vorhergehenden Schrittes.
Alle diese Schritte ben¨ otigen nicht mehr als O(n log n) Operationen (vgl. Kapitel 9), wodurch dieser Algorithmus rechnerisch effizient wird.
14.5 Bemerkungen Lineare Diskriminantenbasen zu Klassifikationszwecken wurden von Saito und Coifman in der Arbeit Local discriminant bases [25] eingef¨ uhrt. Dieselben Autoren beschrieben sp¨ ater in [26] Verbesserungen der LDB-Methode. Sie haben erfolgreiche Experimente zur geophysikalischen akustischen WellenformKlassifikation, zur Radarssignal-Klassifikation sowie zur Klassifikation neu” ronaler Firing-Pattern“ bei Affen durchgef¨ uhrt.
15 Implementierungsfragen
In diesem Kapitel geht es um zwei Fragen, die mit der eigentlichen Implementierung der diskreten Wavelet-Transformation zusammenh¨angen. Die erste Frage bezieht sich auf Signale endlicher L¨ange und darauf, wie diese zu erweitern oder auf andere Weise zu behandeln sind. Bei der zweiten Frage geht es darum, wie die Sample-Werte einer zeitstetigen Funktion zu verarbeiten sind, bevor die diskrete Wavelet-Transformation in einer Filterbank implementiert wird. (Die diskrete Wavelet-Transformation wurde in Kapitel 4 definiert.)
15.1 Signale endlicher L¨ ange Bei Anwendungen haben wir es immer mit Signalen endlicher L¨ange zu tun. Bis jetzt hatten wir vorausgesetzt, daß sich die Signale unbestimmt erweitern lassen. Wir beginnen nun mit einem Signal L endlicher L¨ange mit Sample-Werten x0 , x1 , . . . , xL−1 . Eine richtige Handhabung der Signale endlicher L¨ ange ist in Bildverarbeitungsanwendungen besonders wichtig, bei denen eine ungen¨ ugende Bearbeitung der R¨ ander zum Beispiel in einem komprimierten Bild deutlich erkennbar ist. Wir beschreiben, wie man eine endliche L¨ange in einer Dimension behandeln kann, und f¨ ur Bilder machen wir einfach dasselbe, indem wir gleichzeitig eine Spalte oder eine Zeile behandeln. Das Problem liegt in der Berechnung der Faltungen. In die Summe k hk xn−k geht normalerweise etwa x−1 ein, das nicht definiert ist. Wir k¨ onnen dieses Problem auf zweierlei Weise behandeln. Zun¨achst k¨onnen wir das Signal auf irgendeine Weise u ander hinaus erweitern. Die andere ¨ ber die R¨ M¨ oglichkeit besteht darin, in der N¨ ahe der Endpunkte des Signals zu speziellen randkorrigierten Filtern u ¨berzugehen. In beiden F¨allen gibt es mehrere Alternativen, von denen wir die wichtigsten angeben. Wir beginnen mit verschiedenen Erweiterungstechniken und machen dann mit randkorrigierten Filtern weiter.
198
15 Implementierungsfragen
Erweiterung von Signalen Wir beschreiben hier drei Erweiterungsmethoden: Erweiterung durch Nullen (zero-padding), Erweiterung durch Periodizt¨ at (wraparound) und Erweiterung durch Spiegelung (symmetrische Erweiterung). Vgl. Abb. 15.1. Zero-padding setzt einfach den Rest der Werte auf Null und f¨ uhrt zu der unendlichen Folge . . . , 0, 0, x0 , x1 , . . . , xL−2 , xL−1 , 0, 0, . . . . Außer f¨ ur x0 = xL−1 = 0 liefert Zero-padding einen Sprung in der Funktion. Zero-padding auf einer auf (0, L) definierten stetigen Funktion w¨ urde im Allgemeinen eine unstetige Funktion ergeben. Deswegen wird Zero-padding in den meisten F¨ allen nicht verwendet. Wraparound erzeugt ein periodisches Signal mit der Periode L, indem man die Definitionen x−1 = xL−1 , xL = x0 usw. gibt. Wir erhalten . . . , xL−2 , xL−1 , x0 , x1 , . . . , xL−2 , xL−1 , x0 , x1 , . . . . F¨ ur Signale mit einer nat¨ urlichen Periode ist Wraparound besser als Zeropadding. Die diskrete Fourier-Transformation (DFT) eines Vektors in RL ist die Faltung der periodischen Erweiterung des Vektors mit dem Filter 1, W 1 , . . . , W L−1 , wobei W = e−i2π/L . zero padding
wraparound
symmetric extension
2
2
2
1
1
1
0
0
0
1
1
0
1
2
1
1
0
1
2
1
1
0
1
2
Abb. 15.1. Erweiterungsmethoden
Es gibt zwei M¨ oglichkeiten, ein zeitdiskretes Signal symmetrisch zu erweitern – entweder wir wiederholen das erste und das letzte Sample oder wir tun das nicht. F¨ uhren wir keine Wiederholung durch, dann entspricht das der Erweiterung f (−t) = f (t) in stetiger Zeit. In diskreter Zeit nehmen wir x−1 = x1 , xL = xL−2 usw. und erhalten . . . , x2 , x1 , x0 , x1 , . . . , xL−2 , xL−1 , xL−2 , xL−3 , . . . . Wir bezeichnen das als Ganzpunktsymmetrie1 , denn der Symmetriepunkt liegt bei t = 0. Das erweiterte Signal hat die Periode 2L − 1. 1
whole-point symmetry.
15.1 Signale endlicher L¨ ange
199
Eine Halbpunktsymmetrie2 ist die andere m¨ogliche symmetrische Erweiterungsmethode. Hierbei werden der erste und der letzte Sample-Wert nicht wiederholt und der Symmetriepunkt liegt bei t = 1/2. Wir setzen x−1 = x0 und xL = xL−1 usw. Dadurch ergibt sich ein Signal mit Periode 2L: . . . , x1 , x0 , x0 , x1 , . . . , xL−2 , xL−1 , xL−1 , xL−2 , . . . . Die beiden symmetrischen Erweiterungstechniken liefern zwei Versionen der diskreten Kosinustransformation (DCT). Die DCT wird zum Beispiel beim JPEG-Bildkompressionsstandard verwendet. Bei stetigem Zeitverlauf ergibt die symmetrische Erweiterung eine stetige Funktion. Das ist der Vorteil dieser Erweiterung. Sie f¨ uhrt jedoch einen Sprung in der ersten Ableitung ein. Symmetrische Erweiterung und Filter Von jetzt an setzen wir voraus, daß wir das Signal unter Verwendung der Ganz- oder Halbpunktsymmetrie erweitert haben. Wir werden dann mit einem anderen Problem konfrontiert. Die Ausgaben des Analyse-Teils der Filterbank wurden nach dem Filtern einem Downsampling unterzogen. Wir m¨ochten, daß diese Ausgabesignale ebenfalls symmetrisch sind, denn die Filterbank wird bei der Tiefpaß-Ausgabe in der diskreten Wavelet-Transformation wiederholt. Wie erreichen wir das? F¨ ur eine biorthogonale Filterbank mit symmetrischen (oder antisymmetrischen) Filtern verwenden wir die symmetrische Ganzpunkterweiterung f¨ ur Filter ungerader L¨ ange und die symmetrische Halbpunkterweiterung f¨ ur Filter gerader L¨ ange. In den Bemerkungen findet man Angaben zu B¨ uchern und Artikeln mit weiteren Einzelheiten u ¨ ber Erweiterungen und ihre praktische Implementierung. Randkorrigierte Filter Die Konstruktion randkorrigierter Filter ist ziemlich kompliziert. Bei stetig verlaufender Zeit entspricht das der Definition einer Wavelet-Basis f¨ ur ein endliches Intervall [0, L]. Eine derartige Konstruktion wird immer noch gesucht. Wir wollen deswegen ein Beispiel eines randkorrigierten Wavelets beschreiben. Das Beispiel, das wir betrachten, ist die st¨ uckweise lineare Hut-Funktion als Skalierungsfunktion. Ihr Tr¨ ager besteht aus zwei Intervallen und der Tr¨ager des entsprechenden Wavelets aus drei Intervallen (vgl. Abb. 15.2). Das sind die Synthese-Funktionen. Die Filter sind 0.5, 1, 0.5 bzw. 0.1, -0.6, 1, -0.6, 0.1. Bei diesem Beispiel handelt es sich um eine semiorthogonale Wavelet-Basis. Der Approximationsraum V0 ist orthogonal zum Detail-Raum W0 , aber die BasisFunktionen innerhalb dieser R¨ aume sind nicht orthogonal; die Hut-Funktion ist nicht orthogonal zu ihren Translaten. 2
half-point symmetry.
200
15 Implementierungsfragen V0
W0
1.5
1.5
1
1
0.5
0.5
0
0
0.5
0.5
1
0
1
2
3
1
0
1
2
3
Abb. 15.2. St¨ uckweise lineare Skalierungsfunktion und Wavelet
Diese Basis erweist sich als n¨ utzlich, wenn man mit Hilfe der GalerkinMethode gewisse Differentialgleichungen diskretisiert. In diesem Fall braucht man die duale Skalierungsfunktion und das duale Wavelet nicht zu kennen. In Kapitel 11 findet man Einzelheiten u osung von Differentialgleichun¨ber die L¨ gen mit Hilfe von Wavelets. In Abb. 15.3 sind zwei randkorrigierte Wavelets zu sehen. In Abh¨angigkeit davon, ob auf dem Rand der Differentialgleichung Dirichlet- oder NeumannBedingungen vorliegen, k¨ onnen wir versuchen, f¨ ur die Randbedingung den Wert 0 zu erzwingen. 1
1
0.5
0.5
0
0
0.5
0.5
1
0
1
2
3
1
0
1
2
3
Abb. 15.3. Randkorrigierte Wavelets
15.2 Pr¨ a- und Post-Filterung Implementiert man die diskrete Wavelet-Transformation, dann ben¨otigt man die Skalierungskoeffizienten sJ,k in einer Feinskala J. Das Problem ist das folgende: Normalerweise sind die Sample-Werte f (2−J k) einer zeitstetigen Funktion f (t) gegeben und diese Werte sind nicht gleich sJ,k . Es ist ein weitverbreiteter Fehler, das zu glauben! Wir machen nun einige Vorschl¨age, wie man mit der Sache umgehen kann kann.
15.2 Pr¨ a- und Post-Filterung
201
Pr¨ a-Filterung Wir nehmen an, daß die Sample-Werte f (2−J k) eines tiefpaß-gefilterten Signals f mit fˆ(ω) = 0 f¨ ur |ω| ≥ 2J π gegeben sind. Diese Sample-Werte werden −J zur Approximation von f in Beziehung gesetzt, und zwar in der Skala 2 durch die Projektion fJ (t) := PJ f = f, ϕJ,k ϕJ,k (t). k
Ein Zusammenhang tritt auf, wenn wir die Skalierungskoeffizienten sJ,k = aherungsweise mit Hilfe einer numerischen Integrationsmethode bef, ϕJ,k n¨ rechnen, zum Beispiel mit einer Rechteck-Approximation: ∞ sJ,k = f (t)ϕJ,k (t) dt −∞ ≈ 2−J f (2−J l)ϕJ,k (2−J l) l
=2
−J/2
l
f (2−J l)ϕ(l − k).
Man beachte, daß es sich beim letzten Ausdruck um eine Filterung der Samples von f handelt, wobei die Filterkoeffizienten die 2−J/2 ϕ(−l) sind. Dieser Vorgang wird als Pr¨a-Filterung bezeichnet. Es gibt auch andere Pr¨aFilterungs-Methoden. Ist beispielsweise f bandbegrenzt, dann kann das dazu verwendet werden, die Skalierungskoeffizienten sJ,k genauer zu berechnen. Es ist eine u ¨ bliche Praxis, die Sample-Werte direkt als Skalierungskoeffizienten zu verwenden, was dann zu einem Fehler f¨ uhrt. Dieser Fehler wirkt sich haupts¨ achlichen in den kleinsten Skalen aus, das heißt, f¨ ur Werte j < J in der ¨ N¨ ahe von J (vgl. Ubungsaufgabe 15.1). Post-Filterung Die Sample-Werte lassen sich n¨ aherungsweise rekonstruieren, indem man die Skalierungskoeffizienten sJ,k mit den Filterkoeffizienten 2J/2 ϕ(k) filtert: f (2−J k) ≈ fJ (2−J k) = sJ,l ϕJ,l (2−J k) l
= 2J/2
l
sJ,l ϕ(k − l).
Das ist eine Faltung, die als Post-Filterungs-Schritt bezeichnet wird.
202
15 Implementierungsfragen
¨ Ubungsaufgaben zu Abschnitt 15.2 ¨ Ubungsaufgabe 15.1. Gegeben seien die Sample-Werte f (2−J k) eines tiefpaß-gefilterten Signals f mit f(ω) = 0 f¨ ur |ω| ≥ 2J π. Zeigen Sie, daß f¨ ur ω im Paßband −J f (2−J k)e−i2 kω f(ω) = 2−J k
gilt und daß die Fourier-Transformation der Funktion f (2−J k)ϕJ,k (t) fJ (t) = k
gleich dem folgenden Ausdruck ist: −J/2 ϕ(2 −J ω) f1 J (ω) = 2
−J
f (2−J k)e−i2
kω
.
k
Das ist ein Hinweis darauf, wie ein Filter konstruiert werden k¨onnte, um den Einfluß der Skalierungsfunktion zu kompensieren
15.3 Bemerkungen ¨ Der Ubersichtsartikel von Jawerth und Sweldens [20] beschreibt, wie man orthogonale Wavelets auf einem Intervall definiert. Das Buch [27] von Nguyen und Strang diskutiert Signale endlicher L¨ ange und enth¨alt auch wichtige Literaturhinweise zum weiteren Studium.
Literaturverzeichnis
1. P. Andersson, Characterization of pointwise h¨ older regularity, Appl. Comput. Harmon. Anal. 4 (1997), 429–443. , Wavelets and local regularity, Ph.D. thesis, Chalmers University of 2. Technology and G¨ oteborg University, 1997. 3. G. Beylkin, Wavelets and fast numerical algorithms, Lecture Notes for short course, AMS-93, Proceedings of Symposia in Applied Mathematics, vol. 47, 1993, pp. 89–117. 4. G. Beylkin, R. Coifman, and V. Rokhlin, Fast wavelet transforms and numerical algorithms i, Comm. Pure and Appl. Math. 44 (1991), 141–183. 5. W. Briggs, A multigrid tutorial, SIAM, 1987. 6. A.R. Calderbank, I. Daubechies, W. Sweldens, and B-L Yeo, Wavelet transforms that map integers to integers, Appl. Comput. Harmon. Anal. 5 (1998), 312–369. 7. C.K. Chui, Introduction to wavelets, New York: Academic Press, 1992. , Wavelets: a mathematical tool for signal analysis, Philadelphia: SIAM, 8. 1997. 9. A. Cohen and I. Daubechies, Non-separable bidimensional wavelets, Revista Matem´ atica Iberoamericana 9 (1993), no. 1, 51–137. 10. A. Cohen and J-M Schlenker, Compactly supported bidimensional wavelet bases with hexagonalsymmetry, Constr. Approx. 9 (1993), 209–236. 11. I. Daubechies, Ten lectures on wavelets, SIAM, 1992. 12. I. Daubechies and W. Sweldens, Factoring wavelet transforms into lifting steps, Tech. report, Bell Laboratories, Lucent Technologies, 1996. 13. D.L. Donoho, Nonlinear wavelet methods for recovery of signals, densities and spectra from indirect and noisy data, Proc. Symposia in Applied Mathematics (I. Daubechies, ed.), American Mathematical Society, 1993. 14. D. Gibert, M. Holschneider, and J.L. LeMouel, Wavelet analysis of the chandler wobble, J Geophys Research - Solid Earth 103 (1998), no. B11, 27069–27089. 15. L. Greengard and V. Rokhlin, A fast algorithm for particle simulations, Journal of Computational Physics 73(1) (1987), 325–348. 16. E. Hern´ andez and G. Weiss, A first course on wavelets, CRC Press, 1996. 17. M. Hilton, B. Jawerth, and A. Sengupta, Compressing still and moving images with wavelets, To appear in Multimedia Systems, Vol. 2, No. 1, 1994. 18. M. Holschneider, Wavelets: An analysis tool, Oxford: Clarendon Press, 1995.
204
Literaturverzeichnis
19. B.B. Hubbard, World according to wavelets: The story of a mathematical technique in the making, Wellesley, Mass : A K Peters, 1998. 20. B. Jawerth and W. Sweldens, An overview of wavelet based multiresolution analyses, SIAM Rev. 36 (1994), no. 3, 377–412. 21. J-P Kahane and P.G. Lemari´e-Rieusset, Fourier series and wavelets, Gordon & Breach, 1995. 22. S. Mallat, A wavelet tour of signal processing, Academic Press, 1998. 23. Y. Meyer, Ondelettes et op´erateurs: I, Hermann, 1990. , Wavelets: Algorithms & applications, SIAM, 1993. 24. 25. N. Saito and R. Coifman, Local discriminant bases, Mathematical Imaging: Wavelet Applications in Signal and Image Processing (A.F. Laine and M.A. Unser, eds.), vol. 2303, SPIE, 1994. , Improved local discriminant bases using emperical probability estimati26. on, Statistical Computing, Amer. Stat. Assoc., 1996. 27. G. Strang and T. Nguyen, Wavelets and filter banks, Wellesley-Cambridge Press, 1996. 28. R. Strichartz, Wavelets and self-affine tilings, Constructive Approximation (1993), no. 9, 327–346. 29. W. Sweldens and P. Schr¨ oder, Building your own wavelets at home, Tech. report, University of South Carolina, Katholieke Universiteit Leuven, 1995. 30. M. Vetterli and J. Kovacevic, Wavelets and subband coding, Prentice Hall, 1995. 31. M.V. Wickerhauser, Lectures on wavelet packets algorithms, Tech. report, Department of Mathematics, Washington University, St Louis, 1991.
Sachverzeichnis
abgeschlossener Unterraum 51 Algorithmus Best-Basis 149 Kaskaden- 126 LDB 195 Alias 31, 40 Alias-Ausl¨ oschung 42 Allpaßfilter 23 Alternating Flip 76 Analyse 37 antisymmetrisch 26 Ausl¨ oschungseigenschaft 112 Autokorrelation 19 Banachraum 34 bandbegrenzt 51 Basis L2 (R) 52 Riesz 53 zeitdiskrete 33 Battle-Lemari´e-Wavelet Baum Wavelet-Paket 145 Best-Basis-Algorithmus Betragsantwort 23 biorthogonal 54 Biorthogonalit¨ at 74
138
149
Calder´ on-Zygmund-Operator 177 Cauchy-Folge 34 Cauchy-Schwarzsche Ungleichung 35, 50 Charakterisierungen 69 Chui-Wavelet 139
Detail-R¨ aume 65 Differentialgleichung 172 Dilatationsmatrix 93 Downsampling 37, 39 duale Basis 54 duales Lifting 107 Entropie
149
Faktorisierung 47 Faltung 19 Faltungssatz 21 Fensterfunktion 143, 152 Filter 17 Allpaß- 23 antisymmetrischer 26 Betragsantwort 23 Frequenzantwort 23 Gruppenlaufzeit 26 Hochpaß- 24 IIR (unendliche Impulsantwort) Impulsantwort 18 kausaler 19 linearer 17 linearer Phasengang 25 LTI 18 mit endlicher Impulsantwort (FIR-Filter) 19 Phasenfunktion 23 stabiler 20 symmetrischer 26 Tiefpaß- 23 ¨ Ubertragungsfunktion 21 zeitinvarianter 18
19
206
Sachverzeichnis
Filterb¨ anke orthogonale 44 Fingerabdruck 134 Forward-Transform 72 Fourier-Transformation 30 diskrete 29 zeitdiskrete 22 Frequenzantwort 23
Norm 34 normierter Raum
orthogonales Komplement
Haar-Wavelet 62 Heisenberg-Box 142 Hexagonalgitter 96 Hilbertraum 35, 50 Hochpaßfilter 24
Quantisierungsregel Riesz-Basis
kausal 19 Kompression von Bildern 157 von Operatoren 176 Konditionszahl 54 Konvergenz 34, 50 Korrelation 19 Kostenfunktion 149 lazy Filter 45, 109 LDB-Algorithmus 195 Lifting 107 linearer Phasenengang 25 logarithmisches Potential 172
Nichtstandardform 174 Nichtverzerrung 42
160
53
Sampling-Dichten 97 Sampling-Gitter 94 Sampling-Theorem 31 Satz von Bernstein 182 Satz von Jackson 182 Schwellenwert 166 Signal 17 zeitinverses 21 Signalerweiterung 198 sinc-Funktion 60 sinc-Wavelet 64 Skalierungsfunktion 57, 58 Skalierungsgleichung 59 Spektralfaktorisierung 122 Splitting Trick 146 Standardform 175 Subsampling-Gitter 94 symmetrisch 26 Synthese 38
73
Meyer-Wavelet 137 Modulationsmatrix 75, 103 Mother-Wavelet 64 Multi-Skalen-Analyse (MSA)
52
Parsevalsche Formel 22, 51 perfekte Rekonstruktion Bedingung 43 Phasenfunktion 23 Plancherelsche Formel 51 Poissonsche Summationsformel Polyphasenmatrix 103 Post-Filterung 201 Produktfilter 43 Daubechies 46 Produktformel 59 Projektion 51
Galerkin-Methode 172 Grad der MSA 78 Gruppenlaufzeit 26
Implementierung 197 Post-Filterung 201 Pr¨ a-Filterung 201 Impulsantwort 18 inneres Produkt 35 Integralgleichung 172 Internet 14 inverse Transformation
34
Tiefpaßfilter
23
¨ Ubertragungsfunktion Upsampling 38, 40 57
21
verschwindendes Moment vollst¨ andig 34 Wavelet 63 Wavelet-Gleichung
64
78
30
Sachverzeichnis Wavelet-Paket-Baum Wavelet-Pakete
146
Wavelet-Zerlegung Web
14
65
145
weißes Rauschen
162
z-Transformation 20 Zeit-Frequenz-Atom 141 Zul¨ assigkeitsbedingung 112
207