16.01.2013 Aufrufe

Teil 8.pdf - von Gunthard Kraus

Teil 8.pdf - von Gunthard Kraus

Teil 8.pdf - von Gunthard Kraus

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Dr. Lothar Wenzel<br />

Digitale Signalverarbeitung<br />

ist keine Hexerei<br />

<strong>Teil</strong> 8: Datenfitting und Vorhersage<br />

Bei zahlreichen Anwendungen der<br />

digitalen Signalverarbeitung muß<br />

man die Struktur des vorliegenden<br />

Datenmaterials mit Hilfe einer<br />

Modellvorstellung vereinfachen.<br />

Damit sind im Regelfall Ziele wie<br />

Datenreduktion, Rauschunterdrückung<br />

oder Eliminierung unerwünschter<br />

Übertragungseffekte<br />

verbunden. Die Resultate derartiger<br />

Manipulationen sind darüber<br />

hinaus auch im Sinne der Interbzw.<br />

Extrapolation zu nutzen.<br />

Letzterer Begriff ist vielleicht besser<br />

unter dem Namen „Vorhersage“<br />

bekannt. Einige der wichtigsten<br />

Verfahren und deren Anwendungen<br />

schildert dieser <strong>Teil</strong> unserer<br />

DSP-Serie.<br />

Fittingroutinen findet man in der Signalverarbeitung sowohl<br />

im Zeit- als auch im Frequenzbereich vor. Bekannter<br />

dürfte die erste Variante sein. Im Normalfall ist<br />

eine Menge <strong>von</strong> Wertepaaren (x[n], y[n]) vorgegeben. Interpretiert<br />

werden diese Daten als Meßwert y[n] zum Zeitpunkt<br />

x[n]. Die Zeiten können dabei gleichmäßig verteilt,<br />

manchmal aber auch regellos angeordnet sein. Ein Beispiel<br />

für die zweite Möglichkeit sei vorweggenommen, da es im<br />

weiteren Verlauf noch benötigt wird. Wechselkurse wie die<br />

des Schweizer Franken zur Deutschen Mark (siehe auch [5])<br />

Grundlagen<br />

Digitale Signalverarbeitung<br />

werden an den Währungsbörsen zu zeitlich nicht fixierbaren<br />

Kursen gehandelt. Die Abstände zwischen den verschiedenen<br />

Notierungen reichen <strong>von</strong> einigen Sekunden bis<br />

zu vielen Minuten (Bild 1). Nachts und außerhalb der Handelstage<br />

liegen überhaupt keine Daten vor.<br />

Neben den Wertepaaren ist eine Modellgleichung vorgegeben,<br />

die in bestimmter Weise Zeitpunkte und Meßwerte<br />

miteinander verbindet. Arbeitet man z.B. innerhalb der<br />

Klasse der Polynome, so wird der Grad der Einfachheit<br />

durch die Ordnung des Polynoms charakterisiert. Ziel der<br />

Fittingroutine ist es nun, Modell und Realität möglichst in<br />

Einklang zu bringen. Das läuft auf ein Optimierungsproblem<br />

hinaus, wobei es zahlreiche Zielfunktionale gibt, die<br />

nicht immer zu denselben Resultaten führen werden. Das<br />

am häufigsten verwendete Verfahren ist die Methode der<br />

kleinsten Quadrate, bei der man versucht, den Wert folgender<br />

Summation zu minimieren:<br />

[ [ ] ] 2<br />

∑ fa,xn ( [ ] ) − yn<br />

Das Symbol f steht hierbei für die Modellgleichung, a beschreibt<br />

einen Satz <strong>von</strong> zu bestimmenden Parametern.<br />

Wird polynomial gefittet, steht a gerade für die Menge der<br />

zu ermittelnden Koeffizienten des Polynoms.<br />

Es gibt Standardmethoden zur Lösung des Optimierungsproblems<br />

(1). Im Falle <strong>von</strong> Polynomen als Modellgrundlage<br />

führen diese Strategien auf direktem Wege zu linearen<br />

Gleichungssystemen mit den Koeffizienten des gesuchten<br />

Polynoms als unbekannte Größen. Diese Eigenschaft<br />

ist vielleicht das stärkste Argument für den Einsatz<br />

derartiger Modelle. Später wird anhand <strong>von</strong> Modellvorstellungen,<br />

die auf Linearkombinationen periodischer Schwingungen<br />

aufbauen, gezeigt, daß im allgemeinen Fall eine<br />

kompliziertere Numerik erforderlich ist.<br />

Polynomiale Fits sind mit größter Vorsicht zu genießen,<br />

da dieser Ansatz nur höchst selten etwas mit einem realen<br />

Prozeß zu tun haben wird. Man nutzt Polynome auch nur<br />

62 Elektronik 11/1999<br />

(1)


dann, wenn sich kein besseres Modell anbietet oder falls<br />

klar ist, daß ein Polynom garantiert der richtige Ansatz ist.<br />

Zudem muß man die Ordnung des Polynoms möglichst gering<br />

halten, da ansonsten unschöne Oszillationen auftreten.<br />

Für die Vorhersage zukünftiger Daten sind eigentlich nur<br />

lineare Fits wirklich im Einsatz. Man bedenke, daß sich alle<br />

Polynome jenseits der konstanten Funktion für immer<br />

größer werdende Zeiten im Unendlichen verlieren. Diese<br />

Eigenschaft steht in scharfem Kontrast zum realen Verhalten<br />

aller Meßwerte.<br />

Grundlagen<br />

Digitale Signalverarbeitung<br />

Bild 1. Aktienkurse und andere Notierungen folgen aus Sicht der Taktraten keinem<br />

festen Schema. Die zeitlichen Abstände können im Sekunden- aber gegebenenfalls<br />

auch im Stundenbereich liegen.<br />

Auch wenn es auf den ersten Blick nicht so aussieht, die<br />

Fouriertransformation ist ein polynomialer Fit im Frequenzraum.<br />

Allerdings muß man hier mit komplexen Zahlen<br />

hantieren und es geht um Polynome in der komplexen<br />

Variablen exp(jω), wobei ω für die Frequenz steht.<br />

Die Methode nach Levenberg-Marquardt<br />

Die gebräuchlichste Methode für eindimensionale Fittingprobleme<br />

mit beliebig umfangreichen Parametersätzen<br />

ist das Verfahren nach Levenberg-Marquardt. Diese Methode<br />

arbeitet iterativ und läßt allgemeine Modellgleichungen<br />

zu. Die Qualität des Verfahrens hängt in starkem Maße<br />

<strong>von</strong> den Anfangswerten der Parameter ab. Anders gesagt:<br />

Es muß keine Konvergenz gegen den optimalen Parametersatz<br />

vorliegen. Bei praktischen Anwendungsfällen verfügt<br />

man allerdings relativ oft über gute Abschätzungen für die<br />

Parameter, so daß Levenberg-Marquardt als das Mittel der<br />

Wahl bei allgemeinen Modellansätzen gelten darf.<br />

Das Programm LEVENBERG ist eine voll funktionsfähige<br />

Umsetzung dieses Algorithmus. Man kann Werte künstlich<br />

mit Hilfe <strong>von</strong> Formeln produzieren. Das ist schon deshalb<br />

lehrreich, weil sich die Modellgleichung mit dieser Formel<br />

abstimmen läßt. In diesem Fall kennt man die Lösung, und<br />

es läßt sich überprüfen, ob das Programm in Abhängigkeit<br />

<strong>von</strong> verschiedenen Startwerten zum korrekten Resultat<br />

führt. Es empfiehlt sich die Addition eines Zufallstermes,<br />

was Rauscheffekte simuliert. Die zu beachtenden<br />

Regeln für die Formeleingaben<br />

finden sich in [1].<br />

Filterung statt echtem Fitting<br />

Digitale Filter kann man nicht direkt zu<br />

den Fittingstrategien zählen, manchmal<br />

leiten sie jedoch die eigentliche Optimierung<br />

ein, oder man begnügt sich mit den<br />

gefilterten Daten, ohne eine genaue Modellvorstellung<br />

ins Spiel zu bringen. Letzteres<br />

ist z.B. ein Standardwerkzeug bei<br />

der technischen Analyse <strong>von</strong> Aktienkursen.<br />

Verschiedenste gleitende Mittelwerte<br />

sind hierbei im Einsatz, die zur Herausarbeitung<br />

<strong>von</strong> Trends dienen. Gleitende<br />

Mittelwerte sind nichts anderes als sehr<br />

spezielle digitale Filter mit einem Tiefpaßeffekt.<br />

Als flankierende Maßnahme bei Fittingroutinen<br />

sind Filter insbesondere deshalb<br />

<strong>von</strong> Interesse, weil man mit ihrer Hilfe bestimmte<br />

Störfrequenzen oder ganze Störbänder<br />

ausblenden kann, so daß das reine<br />

Meßsignal übrigbleibt. Verfahren wie<br />

das nach Levenberg-Marquardt arbeiten<br />

auf diesem verbesserten Datenmaterial<br />

weitaus stabiler und auch schneller.<br />

Gewöhnlich ist man an der Aufrechterhaltung<br />

der äußeren Form eines Signals<br />

bei Fittingoperationen interessiert. Insofern<br />

muß man mit linearphasigen Filtern<br />

arbeiten, die, wie im Abschnitt der Serie über digitale Filter<br />

beschrieben [3, 4], weitgehend formkonservierend arbeiten.<br />

Fitting mit periodischen Funktionen<br />

Die klassische Fittingstrategie mit periodischen Schwingungen<br />

basiert auf der Fouriertransformation. Hierbei<br />

schneidet man mehr oder weniger viele Glieder der Fourierentwicklung<br />

ab. Bei zahlreichen Anwendungsfällen genügen<br />

bereits einige wenige Komponenten, um den Signalverlauf<br />

fast vollständig zu reproduzieren. Diese Methode<br />

eignet sich auch für unstetige Kurvenverläufe, allerdings<br />

hat man dann das Gibbs’sche Phänomen des Überschwingens<br />

an den Unstetigkeitsstellen in Kauf zunehmen. Bild 2<br />

erläutert den Annäherungsprozeß in letzterem Fall.<br />

Typisch für zahlreiche Aufgabenstellungen in der Praxis<br />

ist, daß man weiß, daß sich ein gegebenes Signal aus eini-<br />

Elektronik 11/1999 63


gen periodischen Schwingungen zusammensetzt. Normalerweise<br />

sind aber weder Frequenz, Amplitude noch Phase<br />

bekannt. Ein wichtiges Beispiel ist das Doppler-Radar. Infolge<br />

des Doppler-Effektes treten hierbei charakteristische<br />

Frequenzen in Erscheinung, die zur<br />

Geschwindigkeitsermittlung <strong>von</strong> Objekten<br />

benutzt werden. Ein anderes<br />

Beipiel bezieht sich auf ein Spezialproblem<br />

<strong>von</strong> digitalen Bildverarbeitungskarten.<br />

Ziel ist es dabei, Zeilenfrequenzen<br />

sehr präzise zu erfassen und in einer<br />

anschließenden Phase eine Sinusschwingung<br />

mit eben dieser Frequenz<br />

zu generieren. Da hardwaremäßig<br />

alles auf einfach aufgebauten<br />

FPGAs beruht, müssen die zu<br />

entwickelnden Algorithmen ebenfalls<br />

sehr geradlinig sein. In diesem Fall<br />

geht es also um das Fitting <strong>von</strong> Daten<br />

mit Hilfe eines sinusförmigen Modells,<br />

wobei Phase und Frequenz un-<br />

bekannt sind. Eine ähnliche Situation liegt vor, wenn ein<br />

Generator eines Kraftwerkes dem Landesnetz zugeschaltet<br />

werden soll. Genaueste Angaben über zeitliche Spannungsverläufe<br />

sind dann zwingend erforderlich.<br />

Der Fall einer einzigen Schwingung<br />

Die naheliegendste Methode, nämlich die Fouriertransformation,<br />

ist bei den geschilderten Aufgabenstellungen<br />

nicht einsetzbar. Der Grund dafür liegt darin, daß die Abtast-<br />

und die gesuchte Frequenz nicht multiplikativ auseinander<br />

hervorgehen müssen. Sind mehrere Frequenzen zu<br />

ermitteln, ist die Situation noch ungünstiger, da keinerlei<br />

Beziehungen zwischen diesen bestehen müssen. Eine viel<br />

genutzte Methode bei der Suche nach einer einzigen Sinusschwingung<br />

im Signal beruht aber insofern doch auf einer<br />

Fouriertransformation, weil man den größten Peak im Leistungsspektrum<br />

als Näherungswert für die gesuchte Frequenz<br />

nutzt. Die vollständige Methode trägt den Namen<br />

Buneman und wurde bereits im fünften <strong>Teil</strong> dieser Serie<br />

vorgestellt [5]. Bemerkenswert ist, daß die dort (leider fehlerhaft)<br />

dargestellte Formel (in ihrer richtigen Form, s. Kasten<br />

„Errata...“) völlig exakt ist, wenn das Signal wirklich<br />

nur aus einer einzigen periodischen Schwingung besteht.<br />

Schrittweise herantasten<br />

Ein anderes Verfahren zur Bestimmung der Frequenz<br />

und der Phase einer zunächst unbekannten Sinusschwingung<br />

(die Größe der Amplitude sei als gegeben vorausgesetzt)<br />

arbeitet iterativ. Das ist z.B. dann vorteilhaft, wenn<br />

man Anwendungen wie die weiter oben genannte Bildverarbeitungskarte<br />

im Auge hat.<br />

Nach jeder Erfassung eines neuen Meßwertes kann etwas<br />

gerechnet werden, woraus sich Schritt für Schritt die<br />

gesuchte Lösung zusammensetzt. Insgesamt gesehen läßt<br />

sich hierbei auf eine Reglerstruktur aufbauen, die die Differenz<br />

zwischen Meßwert und vorhergesagtem Sinuswert<br />

Grundlagen<br />

Digitale Signalverarbeitung<br />

Bild 2. An Unstetigkeitsstellen tritt das<br />

Gibbs’sche Phänomen des Überschwingens<br />

auf.<br />

zur Korrektur der Frequenzschätzung nutzt. Da Regler rechentechnisch<br />

äußerst effizient umgesetzt werden können,<br />

entsteht insgesamt gesehen eine zufriedenstellende Implementierung.<br />

Die zugrundeliegende Theorie trägt den<br />

Namen Phasenregelschleife (PLL –<br />

phase-locked-loop).<br />

Prony-Algorithmus<br />

Von Prony (bereits 1795!) stammt<br />

die allgemeine Lösung für das Fittingproblem,<br />

basierend auf beliebig<br />

vielen Sinusschwingungen. Es erweist<br />

sich als vorteilhaft, stets im Bereich<br />

der komplexen Zahlen zu agieren,<br />

auch dann, wenn man es eigentlich<br />

mit reellwertigen Signalen zu tun<br />

hat. Insofern bestehen die einzelnen<br />

Schwingungen aus Komponenten<br />

wie A⋅exp(jBt). B steht für die Frequenz,<br />

die komplexe Zahl A verschlüsselt<br />

sowohl die Phase als auch die Amplitude. Die<br />

Idee des Prony-Algorithmus besteht darin, daß man die Ermittlung<br />

der As <strong>von</strong> der der Bs trennt. Letztere werden<br />

zunächst als Nullstellen gewisser Polynome ermittelt, woran<br />

sich in einer zweiten Etappe die Bestimmung der As<br />

anschließt. Hierzu ist ein passendes lineares Gleichungssystem<br />

zu lösen.<br />

Errata im fünften <strong>Teil</strong> der Serie<br />

Leider haben sich zwei Fehler in den fünften <strong>Teil</strong> dieser Serie in<br />

Elektronik 5/1999 eingeschlichen. Wir bitten unsere Leser um<br />

Entschuldigung.<br />

● In der Formel auf S. 64 dürfte kein „m“ auftreten. Statt dessen<br />

muß es „n“ heißen. Richtig lautet sie:<br />

fGrund = f + n<br />

π arctan<br />

sin π ⎛ ⎞<br />

⎜<br />

⎝ n<br />

⎟<br />

⎠<br />

cos π<br />

⎛<br />

⎞<br />

⎜<br />

⎟<br />

FT( x)<br />

( f )<br />

⎜<br />

⎟ mit W =<br />

⎜ ⎛ ⎞ ⎟ FT<br />

⎜ ⎜<br />

⎝ n<br />

⎟ + W<br />

( x)<br />

f + 1<br />

⎟<br />

⎝ ⎠ ⎠<br />

● In Bild 6 wurde der Doppler-Winkel falsch dargestellt.<br />

Natürlich liegt der Doppler-Winkel zwischen den beiden<br />

Schenkeln „Fließrichtung“ und „Messung“.<br />

Messung<br />

Doppler-Winkel<br />

Fließrichtung<br />

64 Elektronik 11/1999<br />

( )


Das Verfahren nach Prony zählt zu den sogenannten indirekten<br />

Methoden, da man die eigentlich erforderliche Optimierung<br />

durch andere Berechnungen ersetzt. Direkte<br />

Verfahren gibt es auch, jedoch geht es dann um Optimierungen<br />

nichtlinearer Art, die äußerst rechenaufwendig und<br />

darüber hinaus numerisch instabil sein können. Ferner betrifft<br />

das ausschließlich die Grundsituation, d.h., es liegt akkurates<br />

Datenmaterial ohne Rauschen vor. Sind die Verhältnisse<br />

ungünstiger, muß der Algorithmus <strong>von</strong> Prony<br />

passend modifiziert werden.<br />

ARMA-Prozesse<br />

Von kaum zu unterschätzender Bedeutung sowohl für<br />

die komprimierte Datenbeschreibung als auch für die Vorhersage<br />

sind die sogenannten ARMA-Prozesse. ARMA ist<br />

die Abkürzung für Auto Regressive Moving Average. Der<br />

erste <strong>Teil</strong> des Namens legt Zusammenhänge mit der Autokorrelationsfunktion<br />

<strong>von</strong> Signalen nahe, gleitende Mittelwerte<br />

erinnern an die bereits behandelten digitalen Filter.<br />

Beide Komponenten spielen in der Tat auch eine entscheidende<br />

Rolle bei der Behandlung <strong>von</strong> ARMA-Prozessen.<br />

Zur Erläuterung der zugrundeliegenden Theorie lassen<br />

sich exemplarisch die täglichen Schlußkurse einer bestimmten<br />

Aktie an der Börse heranziehen. Viele Theoretiker<br />

gehen da<strong>von</strong> aus, daß diese Werte durch einen reinen<br />

Zufallsprozeß generiert werden. Es ist aber sehr gut denkbar,<br />

daß nicht die Börsenkurse der ursprüngliche Zufallsprozeß<br />

sind. Vielmehr können sie als Ergebnis einer<br />

Übertragungsfunktion aus den wahren zufälligen Ereignissen<br />

heraus generiert sein (vergleiche auch [5]). Mit anderen<br />

Worten, man ist daran interessiert, aus zufällig vorliegenden<br />

Daten x[n] auf das unbekannte Systemverhalten zu<br />

schließen. Da fast alles und jedes in unserer Welt als System<br />

deutbar ist, liegt somit eine sehr allgemeine Problemstellung<br />

vor, der man in Technik, Wissenschaft, Finanzwesen,<br />

Biologie und in vielen weiteren Gebieten begegnen<br />

kann.<br />

Die allgemeine Formulierung stützt sich auf die Bestimmung<br />

<strong>von</strong> a- sowie b-Koeffizienten gemäß dem Ansatz:<br />

xn [ ]=−a1xn− [ 1]−...−apxn−<br />

[ p]+<br />

boen [ ]+...+bqen− [ q]<br />

(2)<br />

Das Symbol e steht hierbei für den ursprünglich vorliegenden<br />

Zufallsprozeß, x bezeichnet die Meßwerte. Vom<br />

Signal e sei bekannt, daß es sich ausschließlich um<br />

Gauß’sches weißes Rauschen handelt (Bild 3), der Mittelwert<br />

<strong>von</strong> e sei 0, die Varianz sei mit s bezeichnet.<br />

Diese Aufgabe ist zwar prinzipiell lösbar, sprengt jedoch<br />

den hier gesteckten Rahmen. Eine Beschränkung auf die<br />

wichtige Spezialklasse der AR-Prozesse ist sinnvoll, da einerseits<br />

zahlreiche praktische Einsatzfälle damit abgedeckt<br />

werden können und andererseits eine relativ überschaubare<br />

und geschlossene Theorie vorliegt. Der AR-Ansatz geht<br />

da<strong>von</strong> aus, daß in der Formel (2) keine a-Koeffizienten vorliegen,<br />

es geht demnach um die reine Ermittlung eines Satzes<br />

<strong>von</strong> b-Werten. Diese b-Koeffizienten lassen sich mit Hilfe<br />

der Yule-Walker-Gleichung ermitteln. Die Yule-Walker-<br />

Gleichung ist ein lineares Gleichungssystem, dessen dazu-<br />

Elektronik 11/1999 Für schnelle Anfragen: Elektronik-Leserservice Seite118 verwenden<br />

65


gehörige Matrix aus Elementen der Autokorrelationsfunktion<br />

des Signals x besteht. Nun kennt man diese Autokorrelationsfunktion<br />

nicht exakt, da man es beim praktischen Einsatz<br />

nur mit endlichen Signallängen zu tun hat. Die Formel<br />

stellt aber einen hervorragenden Ersatz dar, d.h.,<br />

die Schätzwerte stimmen im Regelfall sehr gut mit den<br />

wahren Werten überein. Die Summation läuft in Abhängigkeit<br />

<strong>von</strong> k jeweils <strong>von</strong> n = 0 bis n = N – 1 – k.<br />

Eine weitere kritische Stelle bei ARMA- oder AR-<br />

Prozessen ist die Ordnung des Yule-Walker-Systems.<br />

Die Fixierung einer passenden Ordnung ist eine nicht<br />

zu unterschätzende Schwierigkeit bei diesem Verfahren.<br />

Es gibt einige Berechnungsvorschriften für diese<br />

Ordnung, manchmal besitzt man auch andere Informationsquellen<br />

über das zugrundeliegende System.<br />

Sehr oft bleibt aber nichts weiter übrig, als ein bestimmtes<br />

Maß an Subjektivität in Kauf zu nehmen und<br />

zu hoffen, daß die Lösung dem wahren System weitgehend<br />

entspricht.<br />

Der zweite Spezialfall der ARMA-Prozesse liegt dann<br />

vor, wenn in Formel (2) keine b-Koeffizienen vorkommen.<br />

Die Lösung dieses Problems läßt sich in gewisser<br />

Hinsicht auf die AR-Aufgabenstellung zurückführen.<br />

Grob gesagt löst man dann ein AR-Problem sehr hoher<br />

Ordnung und verwendet eine passende Polynomdivi-<br />

Grundlagen<br />

Digitale Signalverarbeitung<br />

Bild 3. Zur Definition des Gauß’schen weißen Rauschens: Im oberen <strong>Teil</strong> ist die Konstruktion<br />

eines Gauß-verteilten Zufallssignals gezeigt, sofern man ein gleichverteiltes Signal als<br />

Grundlage hat. Unten sieht man ein Signal (links), das eine Standardabweichung <strong>von</strong> 1,0<br />

hat. Nur ganz wenige Werte liegen außerhalb der 3-Sigma-Grenze. Rechts daneben findet<br />

man das dazugehörige Powerspektrum. Es treten alle Frequenzen energetisch gesehen mehr<br />

oder weniger gleichstark auf.<br />

∑ xn [ ]xn+ [ k]<br />

für k = 0, 1, 2,..., N − 1 (3)<br />

sion. Die Lösung des allgemeinen<br />

ARMA-Systems ist, wie bereits gesagt,<br />

sehr kompliziert und numerisch<br />

aufwendig.<br />

Savitzky-Golai-Filter<br />

Die Verwandtschaft zwischen<br />

digitalen Filtern und Fittingstrategien<br />

ist eng. Ein prägnantes Beispiel<br />

hierfür ist das Savitzky-Golai-Filter,<br />

das dem Wesen nach ein<br />

geschickt ausgeführter polynomialer<br />

Fit ist. Anzuwenden ist dieses<br />

Filter immer dann, wenn das Signal<br />

langsam erfolgenden Änderungen<br />

unterworfen ist, wobei zufällig<br />

verteilte Störanteile zugelassen<br />

sind. Im Regelfall geht man<br />

hierbei <strong>von</strong> der Annahme aus, daß<br />

die Rauschanteile normalverteilt<br />

sind. An Glättungsfiltern stehen<br />

zwei verschiedene und konkurrierende<br />

Lösungsansätze bereit.<br />

Mathematisch und numerisch<br />

anspruchsvoller sind die sogenannten<br />

Least-Square-Filter, deren<br />

Ziel darin besteht, global gesehen<br />

möglichst perfekt ein vorgegebenes<br />

Signal zu repräsentieren.<br />

Alle Signalwerte stehen somit in<br />

Beziehung zu allen anderen, was gerade die Komplexität<br />

der auszuführenden Berechnungen ausmacht. Neben dem<br />

relativ hohen Rechenaufwand kommt hinzu, daß an ein<br />

Echtzeit-Verhalten dieser Filter nicht zu denken ist, da vor<br />

den auszuführenden Operationen zunächst das Gesamtsignal<br />

bekannt sein muß.<br />

Beide genannten Nachteile werden vom Savitzky-Golai-<br />

Filter vollständig vermieden. Die Grundidee ist mit dem Begriff<br />

des gleitenden Mittelwertes gut umschrieben. Man fixiert<br />

hierzu sowohl eine bestimmte Anzahl an linken und<br />

Bild 4. Polynome werden gut durch Nachbarschaftswerte bestimmt.<br />

Ziel ist es, möglichst nahe an allen Punkten gleichzeitig zu bleiben. Im<br />

Beispielfall besteht die linke Nachbarschaft aus zwei und die rechte<br />

aus drei Punkten. Der Polynomgrad ist drei.<br />

66 Elektronik 11/1999


an rechten Nachbarpunkten als auch den Grad des einzusetzenden<br />

Polynoms. Hierauf aufbauend läßt sich dann ein<br />

Polynom des genannten Grades finden, das möglichst gut<br />

alle Nachbarwerte und den Signalwert an der fixierten Stelle<br />

repräsentiert (Bild 4). Im Normalfall wird das so ermittelte<br />

Polynom durch keinen Punkt direkt gehen, aber im Mittel<br />

ist die Annäherung perfekt. Der Polynomwert an der betrachteten<br />

Stelle ist gerade der neue gefilterte Signalwert.<br />

Aus numerischer Sicht ist der Savitzky-Golai-Algorithmus<br />

äußerst effizient. Es kommt hinzu, daß sich die aufwendigen<br />

<strong>Teil</strong>e der Berechnung vor der eigentlichen Filteroperation<br />

erledigen lassen.<br />

Das kommt naturgemäß<br />

dem Echtzeit-Verhalten<br />

sehr entgegen. Die<br />

Filteroperation im engeren<br />

Sinne erfordert dann nur<br />

noch die Bestimmung eines<br />

einzigen Skalarproduktes<br />

per Signalwert, wobei die<br />

Länge dieses Skalarproduktes<br />

durch die Größe der<br />

angesprochenen Nachbarschaft<br />

determininiert ist.<br />

Es zeigt sich, daß man<br />

keineswegs immer durch<br />

Erhöhung des Polynomgrades<br />

oder unter Verwendung<br />

<strong>von</strong> ausgedehnteren<br />

Nachbarschaften die Güte<br />

der Lösung des Savitzky-<br />

Golai-Verfahrens verbessert.<br />

Alles hängt <strong>von</strong> der<br />

konkreten Anwendung ab.<br />

In jedem Fall läßt sich Zusatzwissen<br />

über den das Signal<br />

produzierenden Prozeß<br />

in bessere Qualität des<br />

Fits ummünzen.<br />

Exakte<br />

Peakbestimmung<br />

Manchmal ist man gar<br />

nicht daran interessiert, ein<br />

gesamtes Signal zu fitten,<br />

vielmehr geht es nur um einen<br />

wohldefinierten Abschnitt<br />

da<strong>von</strong>. Ein prägnantes<br />

Beispiel hierfür ist<br />

die Kreuzkorrelation zweier<br />

Signale (Bild 5). Aufgabe<br />

sei es, die genaue Verschiebung<br />

zwischen den beiden<br />

gegebenen Signalen zu ermitteln.<br />

Die Kreuzkorrelation<br />

ist hierbei ein adäquates<br />

Hilfsmittel, weil die Position<br />

des Maximalwertes der<br />

Kreuzkorrelation als genau<br />

diese Verschiebung inter-<br />

Grundlagen<br />

Digitale Signalverarbeitung<br />

pretiert werden kann. Leider liegen die Dinge in der Praxis<br />

ungleich komplizierter, in erster Linie deshalb, weil die Abtastung<br />

nicht selten zu grob ist und die Signale mannigfachen<br />

Störungen unterworfen sind. Die Kreuzkorrelation<br />

selbst kann beispielsweise eine potentiell gewünschte Genauigkeit<br />

im Subpixelbereich nicht produzieren. Das sieht<br />

aber bereits anders aus, wenn man neben dem Spitzenwert<br />

der Kreuzkorrelation auch die unmittelbaren Nachbarn<br />

mit berücksichtigt. Legt man eine quadratische Kurve<br />

durch diese drei Werte, kann man den genauen Spitzenwert<br />

als qualitativ bessere Positionsbestimmung ansehen.<br />

Elektronik 11/1999 Für schnelle Anfragen: Elektronik-Leserservice Seite 118 verwenden<br />

67


Im übrigen ist der hierdurch generierte Schätzwert für den<br />

Grad der Übereinstimmung der beiden Signale ebenfalls<br />

besser. Die Genauigkeit im Subpixelbereich kann mit dieser<br />

Methode durchaus bis auf 1/3 bis 1/4 gebracht werden.<br />

Das ist schon deshalb eine gute Botschaft, weil man nicht<br />

in jedem Fall ausreichend Freiheitsgrade bezüglich der Abtastrate<br />

hat. Ein klassisches Beispiel hierfür ist die Bildverarbeitung,<br />

da die Pixelauflösung im wesentlichen fixiert ist.<br />

Trotzdem lassen sich mit geeigneten Verfahren Genauigkeiten<br />

bis zu 1/20 Pixel und zuweilen besser generieren.<br />

Auch hier gilt die Regel: Je mehr man über die zugrunde-<br />

Bild 5. Einsatz der Kreuzkorrelation bei der Ermittlung der Übereinstimmung<br />

zweier Signale. Das zweite Exemplar ist leicht geschwächt<br />

und gegenüber dem ersten Signal verschoben. Die<br />

Kreuzkorrelation (nicht-zyklisch im vorliegenden Fall) kann den<br />

Betrag dieser Verschiebung anhand des Maximums leicht rekonstruieren.<br />

liegenden Signale weiß, um so zuverlässiger werden die<br />

Endergebnisse sein. Im Idealfall sind hierunter Modelle zu<br />

verstehen, deren Eigenschaften direkt in die Lösungsstrategie<br />

einfließen. Will man in einem Bild beispielsweise geradlinige<br />

Kanten bestimmen, bieten sich die zugeordneten Fittingstrategien<br />

geradezu an.<br />

Ausgerollte Scheiben<br />

Generell ist die zweidimensionale Signalverarbeitung<br />

reich an Fittingproblemen. Eine weitere interessante Anwendung<br />

ist das automatische Lesen <strong>von</strong> Beschriftungen<br />

auf kreisförmigen Trägern (Bild 6). OCR-Algorithmen (Optical<br />

Character Recognition) können hierbei nicht direkt zum<br />

Einsatz kommen, da derartige Programme <strong>von</strong> geradlinig<br />

orientierten Zeichenketten ausgehen. Gewöhnlich besitzt<br />

man allerdings ausreichend Informationen über die zugrundeliegende<br />

kreisförmige Struktur. In Bild 6 ist das an<br />

den konzentrisch liegenden Ringen zu erkennen. Gelingt<br />

es, diese sicher aufzuspüren, kann man Fittingroutinen<br />

zum Einsatz bringen, die hochgenau die Geometrie der<br />

Scheibe beschreiben. Dann fehlt eigentlich nur noch ein<br />

einziger Schritt. Man bestimme einen konzentrisch liegenden<br />

Ring, der den Schriftzug ganz enthält und strecke die-<br />

Grundlagen<br />

Digitale Signalverarbeitung<br />

Bild 6. Die Lösung des OCR-Problems auf ringförmigen Trägern<br />

erfordert zusätzlichen Aufwand. Gezeigt ist das „Ausrollen“ des<br />

originalen Schriftzuges. Erst daran anschließend kann die OCR-<br />

Routine zur Anwendung kommen.<br />

sen so, daß das wohlvertraute OCR-Problem zum Vorschein<br />

kommt. Der Kern dieser Vorgehensweise liegt in der<br />

geeigneten Fittingstrategie. Diese kann im vorliegenden<br />

Fall deshalb erfolgreich zum Einsatz kommen, weil man<br />

perfektes Wissen über das dahintersteckende Modell besitzt<br />

(konzentrische Kreise).<br />

Thema des nächsten <strong>Teil</strong>s 9 werden Anwendungen der<br />

vorgestellten Methoden sein. gs<br />

Literatur<br />

[1] Wenzel, L.: Digitale Signalverarbeitung ist keine Hexerei, <strong>Teil</strong> 1.<br />

Elektronik 1998, H. 23, S. 96ff.<br />

[2] Wenzel, L.: Digitale Signalverarbeitung ist keine Hexerei, <strong>Teil</strong> 2.<br />

Elektronik 1998, H. 25, S. 86ff.<br />

[3] Wenzel, L.: Digitale Signalverarbeitung ist keine Hexerei, <strong>Teil</strong> 3.<br />

Elektronik 1999, H. 1, S. 52ff.<br />

[4] Wenzel, L.: Digitale Signalverarbeitung ist keine Hexerei, <strong>Teil</strong> 4.<br />

Elektronik 1999, H. 3, S. 48ff.<br />

[5] Wenzel, L.: Digitale Signalverarbeitung ist keine Hexerei, <strong>Teil</strong> 5.<br />

Elektronik 1999, H. 5, S. 60ff.<br />

[6] Wenzel, L.: Digitale Signalverarbeitung ist keine Hexerei, <strong>Teil</strong> 6.<br />

Elektronik 1999, H. 7, S. 58ff.<br />

[7] Wenzel, L.: Digitale Signalverarbeitung ist keine Hexerei, <strong>Teil</strong> 7.<br />

Elektronik 1999, H. 9, S. 62ff.<br />

[8] Die im Text angegebenen Programme stehen zum Download bereit<br />

unter: www.natinst.com/germany<br />

Dr. Lothar Wenzel ist gebürtiger Berliner<br />

und hat Mathematik und Informatik in<br />

Greifswald und Dresden studiert. Nach<br />

Tätigkeiten in einem Kernkraftwerk und<br />

bei der BASF AG, Ludwigshafen, beschäftigt<br />

er sich z.Zt. bei National Instruments<br />

in Austin, Texas, mit dem Design<br />

<strong>von</strong> Algorithmen auf den Gebieten Simulation,<br />

Regelung, Mathematik und Bildverarbeitung.<br />

68 Elektronik 11/1999

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!