Basiswissen Signalverarbeitung

Klaus Frieler ¨ Hamburg Universitat

Was ist ein Signal? • Abstrakt: Ein Unterschied in der Umwelt (System) der einen Unterschied in einem System (Umwelt) bewirkt. • Ein System kommuniziert mit seiner Umwelt uber Signale. Signale tragen Informa¨ tion. • Signale zumeist Funktionen der Zeit x(t) oder des Raumes s(x, y, z) oder beides s(x, y, z, t) aufgefasst werden. • Musik in diesem Sinne ist zeit- und wertkontinuierliches (analoges) Signal. ¨ • Beispiel Gitarrenverstarker: mechanisches Signal → elektrisches Signal → mechanisches Signal → akustisches Signal

Klaus Frieler

Basiswissen Signalverarbeitung 1

Was ist ein Signal? • Ein System transformiert ein Eingangssignal x(t) in ein Ausgangssignal y(t): y(t) = H(x(t)) ¨ Der Operator H heißt Ubertragungsfunktion. ¨ Beispiel Gitarrenverstarker: ySchall (t) = HLautsprecher (HV erst¨arker (HKabel (HT onabnehmer (xSaite (t)))))

Klaus Frieler

Basiswissen Signalverarbeitung 2

Was ist ein Signal? • Ein System heißt linear, falls eine Summe von Eingangssignalen zu einer Summe der entsprechenden Ausgangssignale fuhrt: ¨ H(Ax1(t) + Bx2(t)) = AH(x1(t)) + BH(x2(t)) = Ay1(t) + By2(t) ¨ nicht explizit von • Ein System heißt zeitinvariant, wenn die Ubertragungsfunktion ¨ der Zeit abhangt, d.h. y(t − τ ) = H(x(t − τ )) • Lineare, zeitinvariante (LTI-)Systeme von herausragender Bedeutung in der Signal¨ verarbeitung/Systemtheorie → vollstandig beschreibbar.

Klaus Frieler

Basiswissen Signalverarbeitung 3

Was sind Signale? • Man unterscheidet vier Sorten von Signalen nach Wertetyp: – analoge (zeit-, wertkontinuierlich) – abgetastete (zeitdiskret, wertkontinuierlich) – quantisierte (zeitkontinuierlich, wertdiskret) – digitale (zeit-, wertdiskret) ¨ • Man unterschiedet zwei Sorten von Signalen nach Kausali at – Kausale Signale: x(t) = 0 fur ¨ t 1): an = Ansinϕn bn = Ancosϕn 1 −iAn iϕn (an − ibn) = e cn = 2 2 1 iAn −iϕn e c−n = cn = (an + ibn) = 2 2 • Man kann also beliebige periodische Funktionen (und nur die!) als lineare Summe (additive Synthese) einfacher Sinus-und Cosinusschwingungen darstellen, wobei die Koeffizienten das Spektrum der Funktion angeben.

Klaus Frieler

Basiswissen Signalverarbeitung 7

Signalanalyse: Fourierreihen Beispiel: Rechteckschwingung (T = 2π) f (t) =

(

1, 0 < t < π −1, π < t < 2π c2n = 0 2i c2n+1 = − (2n+1)π ⇒ an = 0 b2n = 0 4 b2n+1 = (2n+1)π

f (t) =

Klaus Frieler

sin 3t sin 5t 4 (sin t + + + ...) π 3 5

Basiswissen Signalverarbeitung 8

Signalanalyse: Fouriertransformatiom • Die Fouriertransformation ist ein wichtiges Hilfsmittel zur theoretischen Analyse linearer Systeme und Differentialgleichungen. • Fur ¨ (nahezu) beliebige Signale kann man auch eine Frequenzzerlegung als Verallgemeinerung der Fourierreihe finden. Die Fouriertransformation ist durch folgendes Intgeral definiert: F {f (t)} ≡ F (ω) =

Z ∞

−∞

f (t)e−iωtdt

ω = 2π T = 2πν ist die Kreisfrequenz. Die FT ist eine komplexe Funktion! Verschie¨ dene Normierungen moglich. ¨ auch negative Frequenzen! Zu• F (ω) nennt man das Spektrum von f und enthalt ¨ ¨ sammenhangende Abschnitte auf der Frequenzachse heißen Frequenzb ander.

Klaus Frieler

Basiswissen Signalverarbeitung 9

Signalanalyse: Fouriertransformation • Kennt man das Spektrum F (ω), so kann man das Signal durch eine inverse Fouriertransformation wiedergewinnen: 1 ∞ F (ω)eiωtdω f (t) = 2π −∞ Z

• Beispiel: Gaußsignal. Ist fσ (t) = √

1 2πσ 2

2 − t2 e 2σ

¨ man nach etwas Rechnung so erhalt Fσ (ω) = e

2 2 − σ 2ω

also wieder eine Gaußfunktion mit Breite 1/ω ¨ • Frage: Was passiert wenn σ gegen Null strebt? (Antwort spater.)

Klaus Frieler

Basiswissen Signalverarbeitung 10

Signalanalyse: Fouriertransformation • Einige Eigenschaften der Fouriertransformation: F {af (t) + bg(t)} = aF {f (t)} + bF {g(t)} F {f (t − t0)} = e−iωt0 F {f (t)} F {f (t) ∗ g(t)} = F {f (t)}F {g(t)} F {f (t)g(t)} = F {f (t)} ∗ F {g(t)} F{

d f (t)} = iωF {f (t)} dt

wobei f (t) ∗ g(t) = die Faltung bezeichnet.

Klaus Frieler

Z ∞

−∞

f (t − τ )g(τ )dτ

Basiswissen Signalverarbeitung 11

Signalanalyse: Fouriertransformation • Einseitiges Leistungs (Power)-Spektrum (positive Frequenzen): P (ω) ∝ |F (ω)|2 + |F (−ω)|2

• Leistung wird oft in dB gemessen:

P ) P0 ¨ (beliebig), 3 dB entsprechend etwa einer Verdopplung der P0 ist die Bezugsgroße Leistung. dB(P ) = 10 log(

¨ • In der Signalverarbeitung ist oft eine Verallgemeinerung der FT gebr auchlicher, die Laplace-Transformation L{x(t)} ≡ X(s) =

Klaus Frieler

Z ∞ 0

f (t)estdt,

s = σ + iω

(komplexe Frequenz)

Basiswissen Signalverarbeitung 12

Exkurs I: Distributionen • Distributionen sind verallgemeinerte Funktionen, sie lassen sich als Grenzwerte von Funktionen auffassen, die selbst keine Funktionen mehr sein m ussen. ¨

• Sie haben streng genommen nur Bedeutung “unterm Integral“. • Wichtigste Distribution: Die Diracsche δ-Funktion. Fur ¨ sie gilt Z

δ(t − τ )f (t)dt = f (τ ) = δ(τ ) ∗ f (τ ),

(Siebeigenschaft)

• Man kann sie sich z.B. als unendlich spitze Gaußkurve vorstellen, an einem Punkt unendlich, uberall sonst 0. ¨

Klaus Frieler

Basiswissen Signalverarbeitung 13

Exkurs I: Distributionen • Eigenschaften der Delta-Funktion. Z

δ(t − τ )dt = 1 (Normiertheit) f (t)δ(t) = f (0)δ(t) δ 0(t)f (t) = −δ(t)f 0(t) δ(t) =

d θ(t) dt

δ(at) =

1 δ(t) |a|

δ(t − ti) δ(g(t)) = 0 (t )| |g i t :g(t )=0 i

Klaus Frieler

X i

Basiswissen Signalverarbeitung 14

Exkurs I: Distributionen • Die Bedeutung ruhrt vor allem aus der Tatsache, dass man mit der Impulsantwort ¨ (=Reaktion auf einen Dirac-Impuls) alles“ uber ein lineares und zeitinvariantes Sy¨ ” stem weiß. • Die Fouriertransformierte der δ-Funktion ist die konstante Funktion. (In einem DiracImpuls sind alle Frequenzen vertreten). F {δ(t)} =

Z ∞

δ(t)e−iωtdt = e0 = 1

−∞ Z ∞

F {1} =

−∞

e−iωtdt = δ(ω)

• Sehr wichtig ist auch die Sprungfunktion (Heavysidefunktion): θ(t) =

Klaus Frieler

(

1, t > 0 0, t < 0

Basiswissen Signalverarbeitung 15

Exkurs II: Lineare Differentialgleichungen • Die wichtigsten LTI-Systeme, insbesondere in der Physik sind lineare DGl. mit konstanten Koeffizienten. N X

dn an n x(t) = y(t) dt n=0 ¨ • Beispiel: Harmonischer Oszillator mit Sinusformiger-Anregung d2 m 2 x(t) + kx(t) = sin(t) dt

• Wir definieren ein Polynom der Ordnung N durch L(x) =

N X

a n xn

n=0

Klaus Frieler

Basiswissen Signalverarbeitung 16

Exkurs II: Lineare Differentialgleichungen • Eine lin. DGL kann man dann kompakt schreiben als L(

d )x(t) ≡ Ltx(t) = y(t) dt

¨ ¨ Impulsantwort (Greens’ Funktion) h(t) als Losung • Wir definieren die zugehorige der Gleichung L(

d )h(t) = δ(t) dt

¨ • Jede Losung der der DGL zu einer Anregung y(t) ergibt sich dann als Faltung mit der Impulsantwort x(t) = h(t) ∗ y(t) = Warum?

Klaus Frieler

Z ∞

−∞

h(t − t0)y(t0)dt0

Basiswissen Signalverarbeitung 17

Exkurs II: Lineare Differentialgleichungen ¨ • Wir wenden L auf diese Losung an: (h(t) ∗ y(t)) Ltx(t) = L Z t∞ Lt(h(t − t0)y(t0))dt0 = = =

Z−∞ ∞ Z−∞ ∞ −∞

Lt(h(t − t0))y(t0)dt0 δ(t − t0)y(t0)dt0

= y(t)

• Das bedeutet, die Impulsantwort weiß alles uber das System. ¨

Klaus Frieler

Basiswissen Signalverarbeitung 18

Exkurs II: Lineare Differentialgleichungen ¨ • Mit Hilfe der Fouriertransformation lassen sich die DGL kompakt l osen. Wir transformieren beide Seiten F {Ltx(t)} = F {y(t)} = Y (ω) Die rechte Seite ergibt nach den Regeln der FT dn F {Ltx(t)} = F { an n x(t)} dt n X dn anF { n x(t)} = dt n X an(iω)nF {x(t)} = X

=

n X

an(iω)nX(ω)

n

= L(iω)X(ω)

Klaus Frieler

Basiswissen Signalverarbeitung 19

Exkurs II: Lineare Differentialgleichungen ¨ ¨ man also durch • Die FT der Losung (fur ¨ Y (ω) 6= 0) erhalt Y (ω) X(ω) = L(iω)

¨ man: • Fur ¨ die Impulsantwort (Y (ω) = 1) erhalt H(ω) =

1 L(iω)

¨ man: • Fur ¨ die homogene Gleichung (Y (ω) = 0) erhalt X0(ω)L(iω) = 0 ⇒ X0(ω) = ⇒ x0(t) =

Klaus Frieler

X

X

ωi :L(iωi )=0

ciδ(ω − ωi)

cieiωit

ωi :L(iωi )=0

Basiswissen Signalverarbeitung 20

Exkurs II: Lineare Differentialgleichungen • Beispiel: Impulsantwort des harmonischen Oszillators d2 dt mit Differentialoperator

2 x(t) = δ(t) (ω = x(t) + ω 0 0 2

s

k ) m

d2 d L( ) = 2 + ω02 dt dt fuhrt auf ¨ 1 1 1 = = L(iω) (ω0 − ω)(ω0 + ω) −ω 2 + ω02 Partialbruchzerlegung fuhrt auf ¨ H(ω) =

1 1 1 ( − ) H(ω) = 2ω0 ω − ω0 ω + ω0

Klaus Frieler

Basiswissen Signalverarbeitung 21

Exkurs II: Lineare Differentialgleichungen • Sei nun y(t) = A sin(ω 0t) eine Anregungsfunktion. FT fuhrt auf ¨ Y (ω) =

Z ∞

A sin(ω 0t)e−iωtdt

−∞ Z ∞

0 0 A (eiω t − e−iω t)e−iωtdt 2i −∞ Z 0 +ω)t A ∞ i(ω 0−ω)t −i(ω (e −e )dt = 2i −∞ A (δ(ω 0 − ω) − δ(ω 0 + ω)) = 2i

=

¨ • Das Spektrum der Losung X(ω) ergibt sich dann aus X(ω) = H(ω)Y (ω)

Klaus Frieler

Basiswissen Signalverarbeitung 22

Exkurs II: Lineare Differentialgleichungen • Wir berechen X(ω): A 1 0 − ω) − δ(ω 0 + ω)) (δ(ω X(ω) = ω02 − ω 2 2i A δ(ω 0 − ω) − δ(ω 0 + ω) = 2i ω02 − ω 02 • Inverse FT fuhrt, unter Beachtung von ¨ 0 t −1 1 iω 0t −1 0 iω e F {δ(ω − ω )} = e F {δ(ω)} =



¨ schließlich auf die allgemeine Losung A sin ω 0t x(t) = 2π (ω02 − ω 2)

Klaus Frieler

Basiswissen Signalverarbeitung 23

Digitale Signale Vorteiler digitaler vs. analoger Signalverarbeitung: • Garantierte Genauigkeit (definiert durch Samplingrate, Quantisierung etc.) • Perfekte Reproduzierbarkeit von Signalverarbeitungsprozessen. ¨ ¨ • Uberlegene Performanz (Alles was mathematisch moglich, im Prinzip auch realisierbar) ¨ (weniger Aufwand, geringere Kosten) • Effektivitat ⇒ Wir brauchen A/D Wandlung: Sampling und Quantisierung.

Klaus Frieler

Basiswissen Signalverarbeitung 24

Digitale Signale: Sampling • Ideales Sampling mit der Periode T kann realisiert werden durch Multiplikation mit P∞ dem Dirac-Kamm ∆T (t) = k=−∞ δ(t − kT ). Das gesamplete Signal xs(t) ist dann xs(t) = x(t)∆T (t) = x(t)

∞ X

k=−∞

δ(t − kT ) =

∞ X

k=−∞

x(kT )δ(t − kT )

• Ist X(ω) = F {x(t)}, dann lautet die Fouriertransformierte des gesampleten Signals: ∞ 1 X 2π X(ω − k ) Xs(ω) = T k=−∞ T

• Das gesamplete Spektrum ist periodisch im Frequenzbereich mit der Periode ωs = 2π T

Klaus Frieler

Basiswissen Signalverarbeitung 25

Digitale Signale: Abtasttheorem • Das Abtasttheorem (Shannon-Nyquist) besagt: Ein gesampeltes Signal kann perfekt rekonstruiert werden, falls die Samplingrate ωs mindesten doppelt so groß ist, wie die maximale im Signal vorhandene Frequenz ωmax. ωs ≥ 2ωmax • Ist das nicht der Fall, erscheinen Frequenzanteile ω > ω s im Spektrum an der Stellen |ω − ωs| . Das nennt man Aliasing. • Das liegt daran, dass das Spektrum des gesampleten Signals aus der periodischen ¨ Fortsetzung und Uberlappung des Bereichs [−ωs/2, +ωs/2] besteht.

Klaus Frieler

Basiswissen Signalverarbeitung 26

Digitale Signale: Abtasttheorem ¨ • Beispiel: Autorader im Film. Ab einer bestimmten Geschwindigkeit scheinen die ¨ Rader erst stillzustehen und dann sich in die entgegengesetzte Richtung mit deutlich langsamerer Geschwindigkeit zu bewegen. Der rote Punkt dreht sich mit einer Periode T = 4 rechts herum, wir samplen mit T s = 7 (Rechtecke). → Scheinbare Bewegung mit Periode Tef f = 28 links herum.

Klaus Frieler

Basiswissen Signalverarbeitung 27

Digitale Signale: Rekonstruktion ¨ man das Signal mit • Ist das Samplingtheorem erfullt, ¨ erhalt ∞ X

ωs x[k]sinc( (t − kT )) x(t) = 2 k=−∞ zuruck. (sinc(t) = sin(t) ¨ t )

Klaus Frieler

Basiswissen Signalverarbeitung 28

Digitale Signale: Aliasing • Antialiasing: Vor (oder nach) dem Samplen wird tiefpassgefiltert mit oberer Grenzfrequenz fs/2.

¨ bis ungefahr ¨ 20kHZ → z .B. CD-Samplingrate 44,1 kHz. • Das menschliche Ohr hort (2 · 20 kHz + 10%) • Aliasing kann nie ganz vermieden werden, denn ¨ 1. Perfektes Samplen ist nicht moglich (Sample & Hold) 2. Ein perfekter Tiefpass ist nicht realisierbar 3. Rauschen ist immer dabei.

Klaus Frieler

Basiswissen Signalverarbeitung 29

Digitale Signale: Quantisierung • Den analogen Samplewerten werden diskreten Stufenwerte zu geordnet. (Abschneiden, runden) • Fur ¨ Audio ist 16bit meistens hineichend. Beim Mastern werden manchmal 24bit verwendet um Fehlerfortpflanzungen zu minimieren. Intern wird oft mit Gleitkommazahlen gerechnet. . • n Bits → 2n Quantisierungsstufen. 16bit = 216 = 65536 Stufen. • Die Differenz zwischen dem analogem Wert und dem Quantisierungswert ist der Quantisierungsfehler → Quantisierungsrauschen. • Z.B: Clipping: Pegel zu hoch, Quantisierung schneidet Signal oben ab.

Klaus Frieler

Basiswissen Signalverarbeitung 30

Digitale Signale: Diskrete Fouriertransformation • Gesamplete FT: X(ω) =

∞ X

x(mTs)e−imωTs

m=−∞

• Zur praktischen, rechnergestutzten Analyse ist die FT aufgrund der Integrale und ¨ den unendlichen Grenzen schlecht geeignet. ¨ • In der Praxis hat man kausale, zeitbeschrankte Signale, d.h. 0 ≤ m < N . X(ω) =

NX −1

x(mTs)e−imωTs

m=0

• Spektrum periodisch mit Periode 2π Ts . Idee: Diskretisierung der Frequenzwerte.

Klaus Frieler

Basiswissen Signalverarbeitung 31

Digitale Signale: Diskrete Fouriertransformation ¨ die Frequenzen • Man unterteilt man die Periode in N Punkte und erhalt , 0 ≤ k < N . Das definiert die Diskrete Fouriertransformation (DFT) ωk = T2πk sN X(ωk ) ≡ X[k] =

NX −1

x[m]e

−i 2πmk N

m=0

=

NX −1

m=0

−mk x[m]WN

• Analog zur inversen FT gibt es eine Umkehrformel (IDFT): −1 1 NX i 2πmk X[k]e N , x[m] = N k=0

0≤m