19
Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für Sprache und Kommunikation, TU Berlin Prof. Stefan Weinzierl, Frank Schultz, Teresa Kunz Übung 10, 28.01.2010: DFT - Fensterung Musterlösung, Fehler/Ungereimtheiten bitte melden 1 Expliziter Hinweis: Didaktik und Formelapparat für die Fensterung sind von [Mös97] (Skript erhältlich im ISTA-Sekretariat TA 7) inspiriert und größtenteils übernommen, die zu jenem Skript gehaltene WS-Vorlesung „Messtechnik und Signalverarbeitung“ (0531 L 505, bisher Di 10-12, TA 201) von Prof. M. Möser ist sehr zu empfehlen!!! Vorbetrachtung Für das allgemein gültige DFT/IDFT-Paar kann geschrieben werden X [k]= K DFT N 1 n=0 x[n] W ±kn N x[n]= K IDFT N 1 k=0 X [k] W kn N (1) mit W N =e j 2 π N K IDFT · K DFT = 1 N (2) Die von uns genutzte [Opp04]-Konvention lautet X [k] = N 1 n=0 x[n]e j (2 π k N ) n x[n] = 1 N N 1 k=0 X [k]e +j (2 π n N ) k (3) Sei zudem an die DTFT, also Fouriertransformation für Folgen erinnert X [Ω] = + n=−∞ x[n]e n x[n] = 1 2 π +π Ω=π X [k]e +j Ω n (4) 1 [email protected], 29. Januar 2010, 16:35 1

Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10FG Audiokommunikation, Institut für Sprache und Kommunikation, TU BerlinProf. Stefan Weinzierl, Frank Schultz, Teresa Kunz

Übung 10, 28.01.2010: DFT - FensterungMusterlösung, Fehler/Ungereimtheiten bitte melden1

Expliziter Hinweis: Didaktik und Formelapparat für die Fensterung sind von [Mös97] (Skripterhältlich im ISTA-Sekretariat TA 7) inspiriert und größtenteils übernommen, die zu jenemSkript gehaltene WS-Vorlesung „Messtechnik und Signalverarbeitung“ (0531 L 505, bisher Di10-12, TA 201) von Prof. M. Möser ist sehr zu empfehlen!!!

Vorbetrachtung

Für das allgemein gültige DFT/IDFT-Paar kann geschrieben werden

X[k] = KDFT

N−1∑

n=0

x[n]W ±k n

Nx[n] = KIDFT

N−1∑

k=0

X[k]W ∓k n

N(1)

mit

WN = e−j 2π

N KIDFT ·KDFT =1

N(2)

Die von uns genutzte [Opp04]-Konvention lautet

X[k] =N−1∑

n=0

x[n] e−j (2π k

N)n

x[n] =1

N

N−1∑

k=0

X[k] e+j (2π n

N) k (3)

Sei zudem an die DTFT, also Fouriertransformation für Folgen erinnert

X[Ω] =+∞∑

n=−∞

x[n] e−j Ωn

x[n] =1

∫ +π

Ω=−π

X[k] e+jΩn dΩ (4)

[email protected], 29. Januar 2010, 16:35

1

Page 2: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

Vom Wesen der Fensterung

Gegeben sei also eine Folge x[n] für −∞ ≤ n ≤ +∞ und das zugehörige kontinuierliche undperiodische Spektrum X[Ω]. Für eine computergestützte Spektralanalyse der Folge x[n] kommtman nicht umhin, eine endliche Zahl Stützwerte N eines repräsentativen Signalausschnittsauszuschneiden. Mathematisch wird dieses Ausschneiden mit einer Gewichts- oder Fensterfolgew[n] beschrieben, wobei wir hier, nach gängigem Konsens, definieren

w[n] = 0 für n < 0 und n ≥ N , w ∈ R (5)

Natürlich muss der gewählte Signalausschnitt nicht bei n = 0 beginnen, allerdings macht esdie ganze Rechnerei ein wenig einfacher, man definiert dann bei der Folge x[n] einfach denNullzeitpunkt um, sodass man 0 ≤ n ≤ N −1 für den auszuschneidenden Teil erhält. Zur Folgew[n] gehört natürlich auch wieder ein Spektrum W [Ω]. Für das Ausschneiden gilt dann weiter

xM [n] = x[n] · w[n] (6)

was im Spektralbereich durch eine Faltung der Spektren ausgedrückt wird

XM [Ω] = (X ∗W )[Ω] (7)

, diese ausgeschrieben

XM [Ω] =1

∫ +π

ν=−π

X[Ω− ν] ·W [ν]dν =1

∫ +π

ν=−π

X[ν] ·W [Ω− ν]dν (8)

Man sieht: Durch das Beschneiden der Folge x[n] erhält man die Folge xM [n] und dessen Spek-trum XM [Ω]. Im Spektrum XM [Ω] ist das ’originale’, eigentlich zu analysierend gewünschteSpektrum X[Ω] enthalten, allerdings wurde dies mittels Faltung verschmiert. Die einzige Mög-lichkeit für XM [Ω] = X[Ω] wäre mit W [Ω] = 2π δ[Ω] zu rechnen

XM [Ω] =

∫ +π

ν=−π

X[Ω− ν] · δ[ν]dν =

∫ +π

ν=−π

X[ν] · δ[Ω− ν]dν = X[Ω] (9)

, das Fensterspektrum W [Ω] = 2π δ[Ω] entspricht aber der Folge w[n] = 1 für alle n, womitaber dann gar nichts aus x[n] ausgeschnitten würde, sondern eher xM [n] = x[n] gilt, waseiner CPU wieder nur wenig hilft :-(. Abb. 1 visualisiert schematisch, wie ein FolgenspektrumX[Ω] (blau) mit einem diracförmigen Fensterspektrum (rot) gefaltet wird. Man sieht, dassdas Faltungsergebnis unten in der Abb. dem Ausgangsspektrum entspricht (von den Rändernmal abgesehen, die hier als Artefakt der schematischen Darstellung nicht diskutiert werdensollen). In Abb. 2 wird nun ein endlich langes Rechteckfenster zur Ausfensterung benutzt. Manerkennt, dass der stetige Anteil des gaußförmigen Spektrums nach der Faltung gut erhaltenbleibt, während die Transiente zu den Rändern ein wenig verschmiert wird, aber immer nochdeutlich ist. Wählt man ein kurzes Fenster (also kleine Frequenzauflösung), wie in Abb. 3dargestellt, wird die Transiente durch die Faltung bis zur Unkenntlichkeit verschmiert undauch der gaußförmige Spektrenanteil wird relativ stark in Mitleidenschaft gezogen. Man mussbei endlichen Folgen also damit leben, dass man, statt x[n] und X[Ω] analysieren zu können,eigentlich ’nur’ xM [n] und XM [Ω] (das Faltungsergebnis nach der Fensterung) zur Verfügunghat. Wie gut man nun XM [Ω] ≈ X[Ω] annähern kann, hängt von der Ausschnittlänge N , vomrepräsentativ gewählten Auschnitt in x[n] und vom Spektrum W [Ω] bzw. dem Folgenverlauf

2

Page 3: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

Signal−Spektrum X(Ω) (blau) und Fenster−Spektrum W(Ω) (rot)

|X(Ω)||W(Ω)|

grafische Faltung (Animation) der Spektren = Multiplikation der Zeitsignale

Faltungsergebnis = ’verschmiertes’ Signal−Spektrum XM

(Ω)

Ω

Laine Berhane Kahsay, "acnv.m"

Abbildung 1: Faltung mit einem Dirac-Fensterspektrum

Signal−Spektrum X(Ω) (blau) und Fenster−Spektrum W(Ω) (rot)

|X(Ω)||W(Ω)|

grafische Faltung (Animation) der Spektren = Multiplikation der Zeitsignale

Faltungsergebnis = ’verschmiertes’ Signal−Spektrum XM

(Ω)

Ω

Laine Berhane Kahsay, "acnv.m"

Abbildung 2: Faltung mit einem langen Rechteck-Fensterspektrum

3

Page 4: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

Signal−Spektrum X(Ω) (blau) und Fenster−Spektrum W(Ω) (rot)

|X(Ω)||W(Ω)|

grafische Faltung (Animation) der Spektren = Multiplikation der Zeitsignale

Faltungsergebnis = ’verschmiertes’ Signal−Spektrum XM

(Ω)

Ω

Laine Berhane Kahsay, "acnv.m"

Abbildung 3: Faltung mit einem kurzem Rechteck-Fensterspektrum

w[n], der natürlich N -spezifisch ausgeprägt ist, ab. Um das Gesagte nochmal in Formeln zuverdeutlichen, gehe man von einem bizarren Spektrum

X[Ω] = 2π δ(Ω− Ωx) (10)

aus, wobei uns hier mal nicht interessieren soll, dass die Folge im Zeitbereich nicht reell seinwird! Für XM [Ω] folgt dann

XM [Ω] = W [Ω− Ωx] (11)

das um Ωx verschobene Sprektrum der Fensterfolge (mehrere Frequenzen im Spektrum denktman sich dann als Superposition) und es fragt sich unter welchen Umständen .

XM [Ω] = W [Ω− Ωx] ≈ X[Ω] = 2π δ(Ω− Ωx) (12)

ist, bzw. für die Praxis: Welchen Fehler macht man durch diese Annäherung und wie kannXM [Ω] interpretiert werden.

Aufgabe

Berechnen und diskutieren Sie das DTFT/DFT-Spektrum des Rechteckfensters.Lösung:Es sei jetzt ein Fenster w[n] der Länge N definiert, für das gelten soll

w[n] = 0 für n < 0 und n ≥ N , w ∈ R (13)

w[n] kann also für 0 ≤ n ≤ N −1 beliebige reelle Zahlen annehmen. Setzt man zunächst hierfürw[n] = 1 erhält man ein sogenanntes Rechteckfenster. Um das Spektrum eines Fensters zubestimmen, kann man die eigentlich unendliche Folge w[n] der DTFT

W [Ω] =

N−1∑

n=0

w[n] · e−j Ωn (14)

4

Page 5: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

unterziehen, wobei dann sinnvollerweise nur über die von Null verschiedenen Folgenwerte sum-miert werden muss. Für das einfache Rechteckfenster wird dann

WRect[Ω] =N−1∑

n=0

1 · e−j Ωn (15)

und Anwendung der geometrische Reihe ([Bro96], S. 29)

WRect[Ω] =N−1∑

n=0

1 · e−j Ωn =1− e−j ΩN

1− e−j Ω(16)

Dieser Ausdruck lässt sich umschreiben

WRect[Ω] =e−j ΩN

2

e−j Ω2

e+j ΩN

2 − e−j ΩN

2

e+j Ω2 − e−j Ω

2

= e−jΩ (N−1)

2e+j ΩN

2 − e−j ΩN

2

e+j Ω2 − e−j Ω

2

(17)

und mit 2 j sin(x) = e+jx − e−jx vereinfachen zu

WRect[Ω] = e−jΩ (N−1)

2sin(N Ω

2

)

sin(Ω2

) (18)

(siehe auch [Lyo04], S.94). Für die Diskussion des Betragsspektrums muss man nur den Sinus-

Bruch diskutieren, e−jΩ (N−1)

2 trägt ja nur Betrag Eins bei. Mit L’Hospital ([Bro96], S. 252)wird für das Rechteckfenster

WRect[Ω = 0] = N (19)

, die Amplitude die bei der Faltung die aktuelle Mittenfrequenz am stärksten gewichtet, diesogenannte Hauptkeulenamplitude. Die Nullstellen WRect[Ω] = 0 ergeben sich mit m ∈ Z ausder Überlegung

2= mπ (20)

also mit einem äquidistanten Abstand zwischen den Nullstellen ∆Ω zu

Ω =2π

Nm = ∆Ωm (21)

Für ungerade N ergeben sich dann N − 1!! Nullstellen für

m = ±1,±2,±3, ...,±N − 1

2(22)

Für gerade N ergeben sich dann N − 1!! Nullstellen für

m = ±1,±2,±3, ...,±

(N

2− 1

)

,−N

2(23)

Hier fällt die ’letzte’ Nullstelle m = −N

2 genau auf Ω = −π. Da ein periodisches Spektrummit 2π-Periodizität vorliegt, könnte man die Nullstelle auch mit m = +N

2 zu Ω = +π de-finieren, wichtig ist nur zu realisieren, dass es eigtl. die gleiche Nullstelle ist und diese nichtzweimal gezählt wird. Dass für m = 0 keine Nullstelle resultiert, haben wir eigentlich schonoben gesehen, L’Hospital ([Bro96], S. 252), dies ist ja unsere Hauptkeule. Es ist nun wichtig zu

5

Page 6: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

realisieren (ohne Beweis), dass jedes N-stufige Polynom (und als dieses kann man das Spektrumletzlich interpretieren) maximal N-1 Nullstellen aufweisen kann, genauso wie das einfache, reellePolynom 4. Ordnung

y(t) = a t3 + b t2 + c t+ d (24)

auch nur maximal 3 Nullstellen haben kann. Die Abb. 4 und 5 verdeutlichen grafisch die FälleN = 4 und N = 5 für die DTFT und die DFT-Stützpunkte des Rechteckfensters. Schön zuerkennen sind jeweils die N−1 Nullstellen im Spektrum. Außerdem findet man die ’Verstärkung’WRect[Ω = 0] = N (unsere Hauptkeulenamplitude), logarithmisch aufgetragen in den Abb.6 und 7 z.B. für N = 4 ca. 12dB wieder. In Lehrwerken werden meistens normierte, umΩ = 0 symmetrische, Darstellungen von Fensterspektren in der Form 20 log10W [Ω = 0] = 0dBgenutzt. Man erkennt, dass sich das Spektrum aus der Hauptkeule, den Nullstellen und weil derVerlauf es nicht anders zulässt aus Seitenkeulen unterschiedlicher Amplitude zusammensetzt.

0 0.5 1 1.5 20

2

4

6

Ω / π

|A|

N=4

DTFTDFT

0 0.5 1 1.5 20

2

4

6

Ω / π

|A|

N=5

DTFTDFT

Abbildung 4: DTFT-Spektren für N-zahlige Rechteckfenster

−1 −0.5 0 0.5 10

2

4

6

Ω / π

|A|

N=4

DTFTDFT

−1 −0.5 0 0.5 10

2

4

6

Ω / π

|A|

N=5

DTFTDFT

Abbildung 5: DTFT-Spektren für N-zahlige Rechteckfenster, −π ≤ Ω < +π

Aus den Ggl. 3 und 4 erkennt man, dass die speziellen Frequenzen

Ωk =2π

Nk (25)

für 0 ≤ k ≤ N − 1 mit k ∈ Z exakt den DFT-Stützstellen entsprechen, welche auch als grauePunkte in den obigen Abbildungen eingetragen sind. Im Prinzip definieren diese Stützstellen dasFensterspektrum komplett, aus diesem kann man dann den einzig zulässigen Spektrenverlaufzwischen den Stützstellen, die schwarzen Kurven (auch wieder ohne Beweis, siehe Fourierreihe,Abtastsatz) interpolieren, um z.B. schönere Grafiken zu erzeugen. Wir haben oben gesehen,

6

Page 7: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

0 0.5 1 1.5 2−20

−10

0

10

20

Ω / π

A /

dB

N=4

0 0.5 1 1.5 2−20

−10

0

10

20

Ω / π

A /

dB

N=5

Abbildung 6: DTFT-Spektren für N-zahlige Rechteckfenster

−1 −0.5 0 0.5 1−20

−10

0

10

20

Ω / π

A /

dB

N=4

−1 −0.5 0 0.5 1−20

−10

0

10

20

Ω / π

A /

dB

N=5

Abbildung 7: DTFT-Spektren für N-zahlige Rechteckfenster, −π ≤ Ω < +π

dass mit dem bizarren Spektrum

X[Ω] = 2π δ(Ω− Ωx) (26)

durch Fensterung das SpektrumXM [Ω] = W [Ω− Ωx] (27)

ensteht. Schauen wir uns im Folgenden an, was bei Rechteckfensterung mit dieser einen diskre-ten Frequenz passiert. Für die diskreten DFT-Frequenzen, welche die komplette Spektreninfor-mation tragen, kann XM [k] geschrieben werden als

XM [k] = W [2π

Nk − Ωx] (28)

und es folgt mit Glg. 18

XM [k] = WRect[2π

Nk − Ωx] = e−j

( 2π

Nk−Ωx) (N−1)

2

sin(

N2π

Nk−Ωx

2

)

sin( 2π

Nk−Ωx

2

) (29)

leicht umgeschrieben

XM [k] = e−j[ N−12 ( 2π k

N−Ωx)] ·

sin[N

2

(2π k

N− Ωx

)]

sin[12

(2π k

N− Ωx

)] (30)

7

Page 8: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

Man sieht: Die Ausprägung der DFT-Koeffizienten XM [k] ist stark von Ωx abhängig, was mitfolgendem Gedankengang verdeutlicht werden soll. Lassen wir

Ωx =2π (kx + α)

Nmit ± α ≤

1

2(31)

zu und setzen oben ein

XM [k] = e−j

[

N−12

(

2π k

N−

2π (kx+α)N

)]

·sin[N

2

(2π k

N− 2π (kx+α)

N

)]

sin[12

(2π k

N− 2π (kx+α)

N

)] (32)

, weiter vereinfacht ergibt

XM [k] = e−j

[

N−12

(

2π (k−kx)N

− 2π α

N

)]

·sin [π ((k − kx)− α)]

sin[π

N((k − kx)− α)

] (33)

Für den Fall α = 0 folgt mit Ωx = 2π kx

N

XM [k] = 0 für k 6= kx

N für k = kx (34)

Falls also genau die gewählte diskrete Frequenz Ωx zufällig mit einer exakten DFT-Stützstellezusammenfällt, erhält man im Fensterspektrum genau einen Wert der von Null verschieden ist,nämlich die exakte! Amplitude dieser Frequenz. Die anderen Werte-die anderen Frequenzen-fallen in die Nullstellen des Fensterspektrums, was auch gut so ist, da sie ja durch Ωx nichtmit angeregt wurden. Diesen Fall bezeichnet man als „best case“, da die Frequenz Ωx exaktin ihrer Amplitude analysiert werden kann, siehe Abb. 8 links. Der „worst case“ ergibt sich(ohne Beweis), wenn α = ±1

2 gewählt wird. Hier fällt auf, dass sich für das Rechteckfensteroffensichtlich zwei Stützstellen die Hauptenergie teilen und auch die andere Stützstellen nichtmehr von Null verschieden sind, siehe Abb. 8 rechts. Das DFT-Spektrum ist nun nicht mehr soeinfach zu interpretieren. Aufgrund unseres gewählten Beispiels wissen wir, dass unser Signalnur aus einer Komponente besteht, was aber im Spektrum nicht mehr eindeutig zu sehen ist.Was aber in dem Fall, wenn wir gar nicht wissen aus welchen Frequenzen und Amplitudenge-wichtungen das zu analysierende Signal besteht? Die Interpretation solcher Spektren erfordertdaher neben fundamentalem Verständnis für Fensterung und die verschiedenen Fensterartenauch viel Analyseerfahrung. Man kann zunächst für jedes Fenster überlegen, welchen Amplitu-denfehler zwischen best und worst case erzeugt. Dann hat man einen ersten Anhaltspunkt überdas ’wahre’ Spektrum. Für das Rechteckfenster soll dies aufgrund der Einfachheit der Rech-nung exemplarisch gezeigt werden. Mit Glg. 33 kann man für ein bestimmtes kx die Amplitudeallgemein

|XM [kx]| = |sin [−π α]

sin[−π

Nα] | = |

sin [π α]

sin[π

Nα] | (35)

und mit „worst case“ α = ±12 zu

|XM [kx]| = |sin[±π

2

]

sin[±π

2N

] | = |±1

∓ sin[

π

2N

] | = |1

sin[

π

2N

] | (36)

angeben. Für sehr große N wird dann mit daraus folgendem sin(x) ≈ x die Amplitude zu

|XM [kx]| =2N

π(37)

8

Page 9: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

0 2 4 6−10

−5

0

5

10

n

x 1[n]

x1[n]=10⋅exp( i [2 π n / 8]⋅ 2)

0 2 4 6−10

−5

0

5

10

n

x 2[n]

x2[n]=10⋅exp( i [2 π n / 8]⋅ (2−1/2))

0 2 4 60

5

10

k

|X1[k

]| / N

DFT of x1 with N=8

0 2 4 60

5

10

k

|X2[k

]| / N

DFT of x2 with N=8

Abbildung 8: Rechteckfensterung für N=8, best case (k=2), worst case (k=2-1/2)

Der Amplitudenfehler zwischen dem „best case“ α = 0 und dem „worst case“ α = ±12 ist für

große N|XM [kx]α=± 1

2|

|XM [kx]α=0|≈

2Nπ

N≈

2

π≈ 0.6366

dB︷︸︸︷−→ −3.9224 dB (38)

Diesen Amplitudenverlust von 10 auf ca. 6.3 findet man in Abb. 8 wieder. Jedoch weiß manimmer noch nicht aus welcher Frequenz (k=2 oder k=1, oder beiden) das Signal im konkretenBeispiel entsteht. Dies würde man durch eine Erhöhung von N erreichen. Desweiteren sinddie relativ hohen Amplituden der anderen Stützstellen störend. Diesen kann durch ein Fenstermit höherer Nebenkeulenunterdrückung entgegengewirkt werden. Und hier kommt ein vielleichtbesser geeigneteres Fenster ins Spiel.

Aufgabe

Berechnen Sie das Spektrum des ’von Hann’-Fensters.Lösung:Bevor man sich der Spektrenanalyse des ’Hanning’-Fensters 2mit der [Opp04]-Formel bemüßigtfühlt, sollte man kurz innehalten. Ein Blick durch ein bißchen Standard-DSP-Literatur offenbartnämlich schnell Definitionsunterschiede dieser und auch anderer Fensterfolgen, welche beispiel-haft in Abb. 9 für zwei Längen N visualisiert sind. Die rote Kurve beginnt bei w[n = 0] = 0,endet aber bei w[n = N − 1] 6= 0, dies wird damit begründet, dass man (zumindest bei derSpektralanalyse) gar kein symmetrisches Fenster braucht [Har78] S. 52, [Mey06]. Das Fensterwird vielmehr so konstruiert, dass in der periodischen Fortsetzung dann w[N ] = w[0] wird.Die schwarze Kurve definiert ein um (N − 1)/2 symmetrisches Fenster, was an beiden End-punkten w[n = 0] = 0 und w[n = N − 1] = 0 wird, mit der verbreiteten Argumentation,

2Erfinder Julius von Hann, österr. Meteorologe, ’Hanning’ als Eigenname für dieses Fenster hat sich in der

Literatur verbreitet, ist aber bitte nicht zu verwechseln mit dem ’Hamming’-Fenster!

9

Page 10: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

0 2 4 60

0.2

0.4

0.6

0.8

1

1.2

1.4

n

w[n

]

Hann−Fenster Definitionen, N=8

Harris, Meyer, Wiki DE, Matlab ’periodic’

Oppenheim, Lyons, Grünigen, Wiki EN, Matlab ’symmetric’

Möser, Ifeachor

0 10 20 300

0.2

0.4

0.6

0.8

1

1.2

1.4

n

w[n

]

Hann−Fenster Definitionen, N=32

Harris, Meyer, Wiki DE, Matlab ’periodic’

Oppenheim, Lyons, Grünigen, Wiki EN, Matlab ’symmetric’

Möser, Ifeachor

Abbildung 9: Auswirkung unterschiedlicher ’von Hann’-Fensterdefinitionen

dass zu den Randpunkten das zu fensternde Signal keine Amplitude mehr aufweisen darf, umdie periodischen Übergänge stetig zu machen [Opp04, Lyo04]. Die blaue Kurve definiert auchein um (N − 1)/2 symmetrisches Fenster, hat aber an beiden Eckpunkten w[n = 0] 6= 0 undw[n = N − 1] 6= 0. Hier wird angeführt, dass man wirklich N ’echte’ DFT-Stützstellen heraus-fenstern will [Mös97, Ife01]. Die Folge w[n] der blauen Kurve hat daher N von Null verschiedeneKoeffizienten, die Folge der blauen Kurve jedoch ’nur’ N − 2. Eine N -Punkte DFT über eineFolge von N−2 von Null verschiedene Stützstellen enthält aber nur N−2 ’echte’ in N extrapo-lierten Stützstellen (Stichwort Zeropadding). Man ist in wissenschaftlicher Praxis gut beraten,wenn man trotz der Standardfensterbezeichung(en), penibel angibt nach welcher Konventiongefenstert wurde, am besten indem man die verwendete Formel der Fensterfolge mit angibt. Inder alltäglichen Benutzung interessiert’s leider keinen so richtig.Halten wir uns hier wie oben angekündigt mal an die [Mös97]-Konvention. Es gilt für dasFenster w[n] der Länge N immer noch

w[n] = 0 für n < 0 und n ≥ N , w ∈ R (39)

, w[n] soll für 0 ≤ n ≤ N−1 beliebige reelle Zahlen, in unserem Fall die eines Hanning-Fenstersannehmen. Zusätzlich soll das Fenster der Symmetrie

w[N − 1− n] = w[n] (40)

gehorchen und keine Nullen im Definitionsbereich aufweisen. Das deshalb benutzte Hanning-Fenster lautet

w[n] = 1− cos[2πN

(n+ 1

2

)]für 0 ≤ n ≤ N − 1

= 0 sonst (41)

Das Spektrum lässt sich wieder mit

cos

[2π

N

(

n+1

2

)]

=1

2

(

e jπ

N e j2π n

N + e−j πN e−j 2π n

N

)

(42)

10

Page 11: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

und

W [Ω] =N−1∑

n=0

w[n] · e−j Ωn (43)

bestimmen. Es wird

WHann[Ω] =N−1∑

n=0

(

1− cos

[2π

N

(

n+1

2

)])

· e−j Ωn (44)

und weiter

WHann[Ω] =N−1∑

n=0

(

1−1

2

(

e jπ

N e j2π n

N + e−j πN e−j 2π n

N

))

· e−j Ωn (45)

WHann[Ω] =N−1∑

n=0

e−jnΩ −1

2e+j π

N

N−1∑

n=0

e−jn (Ω− 2π

N) −

1

2e−j π

N

N−1∑

n=0

e−jn (Ω+ 2π

N) (46)

Mit obigen Erkenntnissen zum Rechteckfenster kann man verkürzt schreiben

WHann[Ω] = WRect[Ω]−1

2e+j π

N WRect[Ω−2π

N]−

1

2e−j π

N WRect[Ω +2π

N] (47)

und sieht zunächst erstmal, dass das Spektrum des Hanningfensters aus einem Rechteckfens-terspektrum und zusätzlich zwei gewichteten und um jeweils eine Stützstelle verschobenenRechteckfensterspektren zusammengesetzt ist. Es lässt sich weiter vereinfachen indem Glg. 18eingesetzt wird.

WHann[Ω] = e−jΩ (N−1)

2sin(N Ω

2 )sin(Ω

2 )

−12 e

+j πN e−j

(Ω−

N) (N−1)

2

sin

(

NΩ−

N

2

)

sin

(

Ω−

N

2

)

−12 e

−j πN e−j

(Ω+2π

N) (N−1)

2

sin

(

NΩ+2π

N

2

)

sin

(

Ω+2π

N

2

) (48)

WHann[Ω] = e−jΩ (N−1)

2sin(N

2Ω)

sin( 12Ω)

−12 e

+j πN e−j

(Ω−

N) (N−1)

2sin(N

2 (Ω− 2π

N))

sin( 12(Ω− 2π

N))

−12 e

−j πN e−j

(Ω+2π

N) (N−1)

2sin(N

2 (Ω+ 2π

N))

sin( 12(Ω+ 2π

N))

(49)

Man beachte nun, dass

e+j πN e−j

(Ω−

N) (N−1)

2 = e−jΩ (N−1)

2 e+j π

N e+j(N−1)

22π

N = e−jΩ (N−1)

2 e+jπ ( 1N+N−1

N)

︸ ︷︷ ︸

−1

(50)

und

e−j πN e−j

(Ω+2π

N) (N−1)

2 = e−jΩ (N−1)

2 e−j π

N e−j(N−1)

22π

N = e−jΩ (N−1)

2 e−jπ ( 1N+N−1

N)

︸ ︷︷ ︸

−1

(51)

11

Page 12: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

womit folgt

WHann[Ω] = e−jΩ (N−1)

2sin(N

2Ω)

sin( 12Ω)

+12 e

−jΩ (N−1)

2sin(N

2 (Ω− 2π

N))

sin( 12(Ω− 2π

N))

+12 e

−jΩ (N−1)

2sin(N

2 (Ω+ 2π

N))

sin( 12(Ω+ 2π

N))

(52)

oder zur Diskussion des Betragspektrums in geeigneterer Darstellung

WHann[Ω] = e−jΩ (N−1)

2 ·

(

sin(N

2 Ω)

sin(12 Ω) +

1

2

sin(N

2

(Ω− 2π

N

))

sin(12

(Ω− 2π

N

)) +1

2

sin(N

2

(Ω+ 2π

N

))

sin(12

(Ω+ 2π

N

))

)

(53)

Das Hanning-Fenster hat nur N-3 Nullstellen, verschenkt also zwei potentielle Nullstellen zurSpektrenformung, siehe Abb. 10 und 11. In den Frequenzbereichen nahe Ω = ±π heben sich diebeiden gewichteten, verschobenen Rechteckspektren (rot und blau) mit dem Rechteckspektrum(schwarz) weg, was in logarithmierte Darstellung in Abb. 12 deutlich zu sehen ist, d.h. hier wirdeine bessere Nebenkeulenunterdrückung im Vergleich zum Rechteckfenster erreicht. Allerdingsaddieren sich um Ω ≈ 0 alle drei Spektrenanteil konstruktiv, was zu einer verbreiterten Haupt-keule führt. Abb. 13 zeigt nun wieder den Fall, wenn eine exakte DFT-Stützstelle (links) und

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−4

−2

0

2

4

6

8

10

12

14

16

Ω / π

A

Hanning−Fenster, N=16

Rechteckfenster R1R2R3Hanningfenster R1+R2+R3

Abbildung 10: Hanning-Fensterspektrum aus Überlagerung von Rechteckfensterspektren

die Mitte zwischen zwei Stützstellen mit einer diskreten Frequenz angeregt wird. Im Vergleichzum Rechteckfenster ergeben sich für den exakten Fall (k=2, links) drei von Null verschiedeneStützstellen, wobei die mittlere die exakte Amplitude der diskreten Frequenz darstellt. Für denworst-case (k=2-1/2, rechts) ergeben sich zwei Stützstellen mit Hauptmaxima und weitere vonNull verschiedene Stützstellen. Der Amplitudenfehler zwischen best und worst case ist für großeN

|XM [kx]α=± 12|

|XM [kx]α=0|=

8≈ 1.1781

dB︷︸︸︷−→ −1.4236 dB (54)

12

Page 13: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Ω / π

|A| /

NRechteck− und Hanning−Fenster, N=16

RechteckfensterHanningfenster

Abbildung 11: DTFT-Spektren für N-zahliges Rechteck- und Hanningfenster, −π ≤ Ω < +π

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−60

−54

−48

−42

−36

−30

−24

−18

−12

−6−3

0

Ω / π

20 lo

g 10(

|A| /

N )

/ dB

Rechteck− und Hanning−Fenster, N=16

RechteckfensterHanningfenster

Abbildung 12: DTFT-Spektren für N-zahliges Rechteck- und Hanningfenster, −π ≤ Ω < +π

13

Page 14: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

kleiner als beim Rechteckfenster. Hier kann man eine Gesetzmäßigkeit postulieren: Je breiter dieHauptkeule eines Fensters ist, desto kleiner ist bei der Spektralanalyise der Amplitudenfehlerfür ein harmonisches Signal, welches in

Ωx =2π (kx + α)

Nmit ± α ≤

1

2(55)

zu liegen kommt. Allerdings bedingt eine breite Hauptkeule eine schlechte Frequenzauflösung,d.h. nah beieinanderliegende Frequenzen werden bei der Faltung XM [Ω] = (XM ∗W [Ω]) ver-schmiert und können nicht mehr sauber getrennt werden. Eine ergänzende Anmerkung sei noch

0 2 4 6−10

−5

0

5

10

n

x 1[n]

x1[n]=10⋅exp( i [2 π n / 8]⋅ 2)

0 2 4 6−10

−5

0

5

10

nx 2[n

]

x2[n]=10⋅exp( i [2 π n / 8]⋅ (2−1/2))

0 2 4 60

5

10

k

|X1[k

]| / N

DFT of Hanning−windowed x1 with N=8

0 2 4 60

5

10

k

|X2[k

]| / N

DFT of Hanning−windowed x2 with N=8

Abbildung 13: Hanningfensterung für N=8, best case (k=2), worst case (k=2-1/2)

erlaubt: In der Literatur werden Fenster oft so definiert, dass für das Maximum ∼= 1 erreichtwird, wodurch für das Hanningfenster nach Möserkonvention

w[n] = 0.5− 0.5 cos[2πN

(n+ 1

2

)]für 0 ≤ n ≤ N − 1

= 0 sonst (56)

folgt. Die obige Definition

w[n] = 1− cos[2πN

(n+ 1

2

)]für 0 ≤ n ≤ N − 1

= 0 sonst (57)

war so gewählt, dass im best case für das Rechteckfenster und Hanningfenster die gleicheAmplitude N resultiert. In [Har78] wird dieser Normierung in Tabelle 1 mit dem sogenanntenCoherent Gain Beachtung geschenkt.

Aufgabe

Erläutern Sie mittels Transformation eines ’von Hann’-Fensters in ein Hamming-Fenster diefundamentale Idee des Fensterdesigns im Spektralbereich.

14

Page 15: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

Lösung:Das Hanning-Fenster mit N-3 Nullstellen im Spektrum verschenkt zwei potentielle Nullstellen.Die Idee die nun Hamming gehabt haben muss, ist dem Hanning-Spektrum genau die zweiweiteren Nullstellen einzufügen, um die Unterdrückung der ersten Nebenkeulen (links und rechtsvon der Hauptkeule) zu verbesseren. Dazu wird das Hanning-Spektrum mit dem Faktor β somodifiziert, dass man genau auf diese Nullstellen Einfluß nehmen kann.

WHamm[Ω] = e−jΩ (N−1)

2 ·

(

sin(N

2 Ω)

sin(12 Ω) +

β

2

sin(N

2

(Ω− 2π

N

))

sin(12

(Ω− 2π

N

)) +β

2

sin(N

2

(Ω+ 2π

N

))

sin(12

(Ω+ 2π

N

))

)

(58)

An die Stelle Ω = 2πN

2.5, also im DFT-Spektrum bei k = 2.5, also beim Maximum der erstenNebenkeule soll eine Nullstelle zusätzlich eingefügt werden. Da w[n] reell werden soll, mussdiese Nullstelle genauso symmetrisch vorliegen (das sind dann genau die zwei zusätzlichenNullstellen), man kann also nur eine Nullstelle vorgeben. Für kleine Argumente (was für großeN mit Ω = 2π

N2.5 erfüllt wäre) kann man wieder sin(x) ≈ x annähern (und zwar nur in den

Nennern!) und erhält für Ω = 5π/N

|WHamm[Ω =5π

N]| = |

(

sin(N

25πN

)

(12

5πN

) +β

2

sin(N

2

(5πN

− 2πN

))

(12

(5πN

− 2πN

)) +β

2

sin(N

2

(5πN

+ 2πN

))

(12

(5πN

+ 2πN

))

)

| (59)

und mit dem Ziel der Nullstelle

|WHamm[Ω =5π

N]| = |

(

15π2N

2

−13π2N

2

−17π2N

)

| ≡ 0 (60)

ergibt sichβ

2

(2N

3π+

2N

)

=2N

5π(61)

Verereinfachung bringt

β =21

25= 0.84 (62)

Das Hammingfenster lässt sich nun nach einfacher Rechnung darstellen als

WHamm[Ω] = (1− β)WRect[Ω] + βWHann[Ω] (63)

woraus für die Folge

wHamm[n] = (1− β)wRect[n] + β wHann[n] für 0 ≤ n ≤ N − 1

= 0 sonst (64)

resultiert, mit

wRect[n] = 1 für 0 ≤ n ≤ N − 1

= 0 sonst (65)

und

wHann[n] = 1− cos[2πN

(n+ 1

2

)]für 0 ≤ n ≤ N − 1

= 0 sonst (66)

15

Page 16: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−4

−2

0

2

4

6

8

10

12

14

16

Ω / π

AHamming−Fenster, N=16

Rechteckfenster R1R2R3Hammingfenster R1+R2+R3

Abbildung 14: Hamming-Fensterspektrum aus Überlagerung von Rechteckfensterspektren

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−60

−54

−48

−42

−36

−30

−24

−18

−12

−6−3

0

Ω / π

20 lo

g 10(

|A| /

N )

/ dB

Rechteck− und Hamming−Fenster, N=16

RechteckfensterHammingfenster

Abbildung 15: DTFT-Spektren für N-zahliges Rechteck- und Hammingfenster, −π ≤ Ω < +π

16

Page 17: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

Dies lässt sich noch umschreiben zu

wHamm[n] = 1− 0.84 cos[2πN

(n+ 1

2

)]für 0 ≤ n ≤ N − 1

= 0 sonst (67)

und könnte als exaktes ’Hamming’-fenster bezeichnet werden, weil es genau die von Hammingwahrscheinlich intendierte Nullstelle beinhaltet. Eine andere Rechnung ([Har78], S.62, hier Vor-sicht: die Benutzung des Dirichlet-Kernel in Glg. (30a) ist kontrovers zu der hier gemachtenRechnung, es war bisher leider keine Zeit dies genauer zu prüfen) kommt zur Erkenntnis, dassdas heute in der Standardliteratur definierte Hammingfenster aus einer Rundung entstanden ist,wonach die Nullstelle schlußendlich bei Ω ≈ 2π

N2.6 zu liegen kommt. Für die [Mös97]-Rechnung

hier kann für Ω ≈ 2πN

2.6 ein β ≈ 0.852 berechnet werden. Skaliert man nun das Fenster wiederso, dass für ungerade N genau der maximale Wert 1 herauskommt (Stichwort: Coherent Gain)erhält man die in der Literatur übliche Darstellung des Hamming-Fensters

wHamm[n] ≈ 0.54− 0.54β cos

[2π

N

(

n+1

2

)]

(68)

wHamm[n] = 0.54− 0.46 cos

[2π

N

(

n+1

2

)]

(69)

hier natürlich wieder in Möser-Konvention. In Abb. 14 sieht man sehr schön die zusätzlicheingefügten Nullstellen, was dann in logarithmischer Darstellung Abb. 15 zu einer stark be-dämpften ersten Nebenkeule führt. In der Vergleichsgrafik zwischen Rechteck-, Hanning undHammingfenster sieht man dann, dass die stark bedämpften ersten Nebenkeulen im Hamming-fenster erkauft werden mit einer nicht ganz so raschen Abnahme der restlichen Nebenkeulen,allerdings resultiert auch eine leicht schmalere Hauptkeule im Vergleich zum Hanningfenster.Für worst und best case ergibt sich für das ’exakte’ Hammingfenster mit β = 0.84 die Abb.16. Im Vergleich zum Hanningfenster fällt auf, dass für den best case die Nebenmaxima kleinerausfallen (Nullstelle), dafür aber im worst case der Amplitudenfehler größer ist. Dieser ist mitca. -1.78dB anzugeben und wird in [Har78] mit Scalloping Loss bezeichnet.

Aufgabe

Erläutern Sie kurz, welche Ideen zum Dolph-Chebyshev und Kaiser-Bessel-Fenster führten.Lösung:

Literatur

[Bro96] Bronstein I.N., Semendjajew K.A., Grosche G., et al. (1996): Teubner-Taschenbuchder Mathematik. Stuttgart, Leipzig: Teubner.

[Har78] Harris F.J. (1978): On the use of windows for harmonic analysis with the discretefourier transform. Proc. of the IEEE, 66(1), 51–83.

[Ife01] Ifeachor E., Jervis B. (2001): Digital signal processing. Essex, UK: Pearson, 2.Auflage.

17

Page 18: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

0 2 4 6−10

−5

0

5

10

n

x 1[n]

x1[n]=10⋅exp( i [2 π n / 8]⋅ 2)

0 2 4 6−10

−5

0

5

10

n

x 2[n]

x2[n]=10⋅exp( i [2 π n / 8]⋅ (2−1/2))

0 2 4 60

5

10

k

|X1[k

]| / N

DFT of Hamming−windowed x1 with N=8

0 2 4 60

5

10

k|X

2[k]|

/ N

DFT of Hamming−windowed x2 with N=8

Abbildung 16: Hammingfensterung für N=8, best case (k=2), worst case (k=2-1/2)

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−60

−54

−48

−42

−36

−30

−24

−18

−12

−6−3

0

Ω / π

20 lo

g 10(

|A| /

N )

/ dB

Rechteck−, Hanning− und Hamming−Fenster, N=16

RechteckfensterHanningfensterHammingfenster

Abbildung 17: DTFT-Spektren für N-zahliges Rechteck-, Hanning und Hammingfenster

18

Page 19: Einführung in die digitale Signalverarbeitung Übung 10 ... · Einführung in die digitale Signalverarbeitung - Übung (3135 L 372) - WS09/10 FG Audiokommunikation, Institut für

[Lyo04] Lyons R.G. (2004): Understanding digital signal processing. Prentice HallInternational, 2. Auflage.

[Mey06] Meyer M. (2006): Signalverarbeitung. Analoge und digitale Signale, Systeme undFilter. Vieweg+Teubner, 4. Auflage.

[Mös97] Möser M. (1997): Digitale Signalverarbeitung. Vorlesungsskript 1997, TU Berlin.

[Opp04] Oppenheim A.V., Schafer R.W., Buck J.R. (2004): Zeitdiskrete Signalverarbeitung.München: Pearson Studium, 2. Auflage.

19