Teil 8.pdf - von Gunthard Kraus
Teil 8.pdf - von Gunthard Kraus
Teil 8.pdf - von Gunthard Kraus
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