Eksempel 1. Frekvensene i DFT. Forelesning 13. mai På samme måte har vi at. I et eksempel fra forrige uke brukte vi sekvensen

Like dokumenter
Bruk av tidsvindu. Diskret Fourier-transform. Repetisjon: Fourier-transformene. Forelesning 6. mai 2004

Repetisjon: LTI-systemer

Uke 10: Diskret Fourier Transform, II

Dagens temaer. Endelig lengde data. Tema. Time 11: Diskret Fourier Transform, del 2. Spektral glatting pga endelig lengde data.

Sampling ved Nyquist-raten

Repetisjon: Eksempel. Repetisjon: Aliasing. Oversikt, 26.februar Gitt. Alle signaler. Ettersom. vil alle kontinuerlig-tid signaler.

Repetisjon: Spektrum for en sum av sinusoider

Generell informasjon om faget er tilgjengelig fra It s learning.

Repetisjon: Sampling. Repetisjon: Diskretisering. Repetisjon: Diskret vs kontinuerlig. Forelesning, 12.februar 2004

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

pdf

LØSNINGSFORSLAG TIL SIGNALBEHANDLING 1 JUNI 2010

Uke 6: Analyse i frekvensdomenet

Uke 9: Diskret Fourier Transform, I

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

UNIVERSITETET I OSLO


Uke 6: Analyse i frekvensdomenet

Dagens temaer. Tema. Time 6: Analyse i frekvensdomenet. z-transformasjonen. Fra forrige gang. Frekvensrespons funksjonen

UNIVERSITETET I OSLO

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

UNIVERSITETET I OSLO

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

Introduksjon. «Diskret» sinus/cosinus i 1D. Funksjonen sin(θ) INF april 2010 Fourier -- En annen vinkling på stoffet i kapittel 4

UNIVERSITETET I OSLO

Dagens temaer. Definisjon av z-transformasjonen. Tema. Time 5: z-transformasjon og frekvens transformasjon. Fra forrige gang

UNIVERSITETET I OSLO

Fourier-Transformasjoner IV

Hjelpemidler/hjelpemiddel: D - "Ingen trykte eller håndskrevne hjelpemidler tillatt. Enkel kalkulator tillatt."

Fasit, Eksamen. INF3440/4440 Signalbehandling 9. desember c 0 + c 1z 1 + c 2z 2. G(z) = 1/d 0 + d 1z 1 + d 2z 2

UNIVERSITETET I OSLO

Uke 6: Analyse i frekvensdomenet

TMA Matlab Oppgavesett 2

Generell informasjon om faget er tilgjengelig fra It s learning.

Dagens mål. Det matematiske fundamentet til den diskrete Fourier-transformen Supplement til forelesning 8 INF Digital bildebehandling

UNIVERSITETET I OSLO

Basisbilder - cosinus. Alternativ basis. Repetisjon Basis-bilder. INF april 2010 Fouriertransform del II. cos( )

Transformanalyse. Jan Egil Kirkebø. Universitetet i Oslo 17./23. september 2019

UNIVERSITETET I OSLO

Løsningsforslag til hjemmeeksamen i INF3440 / INF4440

STE 6146 Digital signalbehandling. Løsningsforslag til eksamen avholdt

EKSAMEN STE 6219 Digital signalbehandling

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

Forelesning, 23.februar INF2400 Sampling II. Øyvind Ryan. Februar 2006

LØSNINGSFORSLAG TIL EKSAMEN STE 6219 Digital signalbehandling

Forelesning, 17.februar INF2400 Sampling II. Øyvind Ryan. Februar 2005

( x+ π 2) Bakgrunn: Sinus og cosinus. Bakgrunn: Samplet sinus i 1D. Bakgrunn: Samplet sinus i 2D. Bakgrunn: Sinus i 2D. sin( x)=cos.

z = a + jb Mål Komplekse tall: Sum og produkt Komplekse tall

3UDNWLVN DQYHQGHOVH DY ')7

HØGSKOLEN - I - STAVANGER. Institutt for elektroteknikk og databehandling

0.1 Morlet wavelets i FYS2130-notasjon (v )

Forkunnskapskrav. Hva handler kurset om. Kontaktinformasjon. Kurset er beregnet på en student som kan

UNIVERSITETET I OSLO

STE 6219 Digital signalbehandling Løsningsforslag

Uke 12: FIR-filter design

Kompleks eksponentialform. Eulers inverse formler. Eulers formel. Polar til kartesisk. Kartesisk til polar. Det komplekse signalet

f(t) F( ) f(t) F( ) f(t) F( )

INF mars 2017 Fourier I -- En litt annen vinkling på stoffet i kapittel 4

1 Trigonometriske Funksjoner Vekt: 1. 2 Trigonometriske Funksjoner Vekt: 1

sin(2 ui/n) starter på 0 og repeteres u ganger per N samples. cos(2 ui/n) starter på 1 og repeteres u ganger per N samples

TTT4110 Informasjons- og signalteori Løsningsforslag eksamen 9. august 2004

SPEKTALANALYSATORER. Fig. 1 Illustrasjon av sammenhengen tidsfunksjon - frekvensspektrum

Forelesening INF / Spektre - Fourier analyse

Uke 4: z-transformasjonen

Uke 4: z-transformasjonen

Fourier-Transformasjoner II

Uke 5: Analyse i z- og frekvensdomenet

Bedømmelse: Ved bedømmelse vektlegges oppgavene I, II og III likt.

LØSNINGSFORSLAG TIL EKSAMEN STE 6219 Digital signalbehandling

Noen presiseringer mhp Diskret Fourier Transform. Relevant for oblig 1.

NORGES TEKNISK- NATURVITENSKAPELIGE UNIVERSITET Side 1 av 5

Løsningsforslag til prøveeksamen i fag SIG50 Signalbehandling

STE 6219 Digital signalbehandling Løsning til kontinuasjonseksamen

Fourier-Transformasjoner

Fasit til midtveiseksamen

Generell informasjon om faget er tilgjengelig fra It s learning. 7.1 Stokastisk prosess Lineær prediktor AR-3 prosess...

Konvolusjon og filtrering og frevensanalyse av signaler

4_Komplekse_tall.odt tg. Kap.4 Komplekse tall

MAT-INF 2360: Obligatorisk oppgave 1

LØSNINGSFORSLAG for KONTINUASJONSEKSAMEN I FAG SIE2010 Informasjons- og signalteori, 29. juli y(n) = ay(n 1) + x(n k),

8 Interpolasjon TMA4125 våren 2019

Basisbilder - cosinus v Bildene

Oblig 1 FYS2130. Elling Hauge-Iversen

INF mars 2017 Diskret Fouriertransform del II

'HQ GLVNUHWH )RXULHU-WUDQVIRUPHQ (')7)

TMA Kræsjkurs i Matlab. Oppgavesett 3 Versjon 1.2

Tidsdomene analyse (kap 3 del 2)

Repetisjon. Jo Inge Buskenes. INF3470/4470, høst Institutt for informatikk, Universitetet i Oslo

Repetisjon. Jo Inge Buskenes. INF3470/4470, høst Institutt for informatikk, Universitetet i Oslo

Uke 4: z-transformasjonen

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Uke 12: FIR-filter design

TFY4106 Fysikk. Institutt for fysikk, NTNU. Våren Løsningsforslag til øving 8.

Eksempel: Ideelt lavpassfilter

Utregning av en konvolusjonssum

UNIVERSITETET I OSLO

Transkript:

Frekvensene i DFT Forelesning 3. mai 4 Pensum i boken: fra 3-5.3 til 3-8.4, samt 3-9. Delkapitlene 3-8.5, 3-8.6 og 3-8.7 er nyttig selvstudium. Oversikt Spektralanalyse av signaler med endelig lengde Spektralanalyse av periodiske signaler Spektrogram Fast Fourier Transform (FFT) DFT-beregningen er gitt som L n= x[n]e j(π/)kn for k =,,..., De normaliserte frekvensene ˆω k = (π/)k strekker seg over intervallene < (π/)k π for < k / π < (π/)k π for /< k Vi vet at ˆω har en periodisitet på π, slik at π( ) ˆω = = π π er den positive aliasfrekvensen til den negative frekvensen ˆω = π = ˆω. ISTITUTT FOR IFORMATIKK ISTITUTT FOR IFORMATIKK På samme måte har vi at π( ) ˆω = = π 4π er den positive aliasfrekvensen til den negative frekvensen ˆω = 4π = ˆω. Gitt at x[n] er en reell sekvens. Da ser vi at X[ k] = = = L x[n]e j(π/)( k)n n= L x[n]e j(π πk/)n n= L x[n]e j(π/)kn n= er den komplekskonjugerte til L n= x[n]e j(π/)kn Eksempel I et eksempel fra forrige uke brukte vi sekvensen x[n] = {,,, } og fant vi en 4-punkts DFT, gitt som {, e jπ/4,, e jπ/4 } Her gjenfinnes den konjugerte symmetrien ved X[k].5.5 X[4 ] = X[3] = X [] X[4 ] = X[] = X [] X[4 3] = X[] = X [3] Illustrasjon av 4 punkts DFT for sekvensen {,,, } (/) e jπ/4 (/) e jπ/4 Generelt har vi altså X[ k] = X [k] for k =,,...,.5.5.5.5.5 3 3.5 4 ISTITUTT FOR IFORMATIKK 3 ISTITUTT FOR IFORMATIKK 4

Eksempel Figuren viser symmetri og overgangen mellom ulike frekvensskalaer, for en DFT-beregning som gir koeffisientene X[k ] og X[ k ]. X[k].5 DFT koeffisientenes symmetri / k k / k.5.5 pi pi k/ pi k/ pi pi( k)/ pi normalisert vinkelfrekvens, i radianer X[ k ]=X * [k ] X[k ] X[ k ]=X * [k ] fs/ f f fs/ fs f fs frekvens f, i Hz X[ k ] = X [k ] = X[ k ], så k er et positiv-frekvens alias til k. Skalaene er frekvensindeksen k, normalisert frekvens ˆω k (rad) og f k (Hz). Forholdet er ˆω k = πk og f k = ω k π = ˆω kf s π = k T s DFT for komplekst eksponential Anta sekvensen x [n] = e j( ˆωn+φ), n =,,..., og studer dennes -punkts DFT X [k] = e j( ˆωn+φ) e j(πk/)n n= Vi forenkler og finner X [k] = e jφ n= j(πk/ ˆω)n e ˆω) jφ e j(πk/ = e e j(πk/ ˆω) Substitusjonen θ = πk/ ˆω gir jφ e jθ X [k] = e e jθ jφ e jθ/ e jθ/ e jθ/ = e e jθ/ e jθ/ e jθ/ ISTITUTT FOR IFORMATIKK 5 ISTITUTT FOR IFORMATIKK 6 Videre forenklinger gir θ jφ e j X [k] = e e j θ = e jφ θ( ) j e sin ( θ) sin ( θ) sin ( θ) sin ( θ) Vi gjenkjenner Dirichlet-funksjonen D (e jθ ) = sin( θ) sin ( θ) og ser at DFT-beregningen kan skrives som X [k] = D (e jθ ) e jφ θ( ) j e = D (e j(πk/ ˆω) ) e jφ e j (πk/ ˆω )( ) Eksempel DFT for x [n] = e j ˆωn, ˆω = 5π =.5 π, = gir X [k] = D (e j(π/(k.5)) ) Amplitude normalisert frekvens, i π radianer.5.5.5 8 6 4 8 6 4 Da ser vi lett at X [k] = D (e j(πk/ ˆω) ) 5 5 5 ISTITUTT FOR IFORMATIKK 7 ISTITUTT FOR IFORMATIKK 8

DFT for x [n] = e j ˆωn, ˆω = k π, k =, = Ettersom en IDFT på δ[k k ] gir x [n] = k= δ[k k ]e j(π/)kn = e j(π/)kn er det klart at DFT for x [n] når ˆω = k π, er X [k] = δ[k k ] og således ikke-null kun i k = k. Amplitude.5.5.5 8 6 4 8 6 normalisert frekvens, i π radianer Dette kan vi også finne fra X [k] = D (e j(πk/ ˆω) ) e jφ e j (πk/ ˆω )( ) ved å sette inn for φ = og ˆω = πk /, som gir X [k] = D (e j(πk/ πk/) ) e j (πk/ πk /)( ) = D (e j(π/)(k k) ) e j (π/)(k k )( ) = sin( π(k k )) sin ( π(k k ) ) e j(π/)(k k)( ) = sin( π(k k ) ) sin ( π(k k ) ) e j(π/)(k k)( ) k k = k = k 4 = δ[k k ] 5 5 5 ISTITUTT FOR IFORMATIKK 9 ISTITUTT FOR IFORMATIKK DFT for sinuoid Anta signalet ( πk n ) x 3 [n] = cos, k Z som kan skrives som x 3 [n] = ( e j πk n + e j πk n ) DFT-beregningen er en lineær operasjon, slik at X 3 [k] = DFT ( x 3 [n] ) ( ) ( = DFT πk ej n ) + DFT πk e j n ( ) ( = DFT πk ej n ) + DFT π( k ej )n Vi kjenner allerede ) DFT (e j πk n = δ[k k ] og bruker det til å finne X 3 [k] = δ[k k ] + δ[k ( k )] = δ[k k ] + δ[k + k ] Spektralanalyse av signaler med endelig lengde Anta et signal med endelig lengde L x[n], n L Vi evaluerer DFT for k =,,..., X(e jπk/ ) = L n= x[n]e j(πk/)n = X[k] der det ikke er noe krav om at = L. Hvis > L vil beregningen utføres ved at L nullsampler legges til på slutten av x[n]. Den får da ny lengde L + ( L) =, og vi kan beregne n= kalles zero-padding i mange lærebøker x[n]e j(πk/)n ISTITUTT FOR IFORMATIKK ISTITUTT FOR IFORMATIKK

Frekvensrespons av FIR-filter Anta at vi ønsker frekvensresponsen H(e j ˆω ) til et FIR-filter med impulsrespons h[n]. Eksempel Et Hann FIR-filter har impulsresponsen.5.5 cos ( π L h[n] = n) n L ellers Hvis filtret har lengde L er uttrykket en DTFT H(e j ˆω ) = L n= j ˆωn h[n]e h[n].8.6.4. Impulsrespons til Hann filter med lengde L= For numerisk beregning må frekvensen diskretiseres til punkter, og vi får en DFT H[k] = L n= for k =,,..., h[n]e j(πk/)n = H(e j(πk/) ) Hvis er stor nok vil H[k] ha samme form som H(e j ˆω ). kontinuerlig frekvens h[n].8.6.4. 4 6 8 4 6 8 tidsindeks n Impulsrespons til Hann filter med lengde L=4 5 5 5 3 35 4 tidsindeks n Vi beregner DFT for h[n] ved H[k] = L n= og setter = 4. h[n]e j(πk/)n, k =,,..., ISTITUTT FOR IFORMATIKK 3 ISTITUTT FOR IFORMATIKK 4 Figurene viser absoluttverdien av beregnet DFT for Hann-filtret, plottet mot en diskret x-akse ˆω = πk/, = 4. H(e jω ) H(e jω ) 5 5 5 Frekvensrespons (beregnet ved DFT) til to Hann filtre..4.6.8..4.6.8 normalisert frekvens, i enheter av π radianer 5 Frekvensrespons (beregnet ved DFT) til to Hann filtre, sentrert om ω =.8.6.4...4.6.8 normalisert frekvens, i enheter av π radianer I den øverste figuren vil H(e j ˆω ) for π < ˆω π tilsvare H[k] for / < k. Frekvensene π < ˆω π er da positivfrekvens aliaser til π < ˆω, og H(e j ˆω ) kan flyttes som i den nederste figuren. L= L=4 L= L=4 Spektralanalyse av periodiske signaler Anta kontinuerlig-tid signalet x c (t) =.474 cos(π()t +.577).36 cos(π(4)t +.8769).4884 cos(π(5)t.85).94 cos(π(6)t.4488).3 cos(π(7)t) med fundamentalfrekvens f = Hz. De harmoniske har frekvenser, 4, 5, 6 og 7 ganger f. Vi sampler med f s = 4 Hz, og får x[n] =.474 cos(.πn +.577).36 cos(.πn +.8769).4884 cos(.5πn.85).94 cos(.8πn.4488).3 cos(.85πn) Alle de normaliserte vinkelfrekvensene ˆω er heltallsmultipler av ˆω =.5π = π/4. Også her har de harmoniske frekvenser som er, 4, 5, 6 og 7 ganger ˆω. ISTITUTT FOR IFORMATIKK 5 ISTITUTT FOR IFORMATIKK 6

x c (t) Kontinuerlig tid signal x (t) c.5.5 5 5 5 tid t, i sekunder x 3 Samplet diskret tid signal x[n] Fasen er ikke tidsavhengig og kan trekkes utenfor DFT-summen, slik at ( πk n ) cos + φ DFT ejφ δ[k k ]+ e jφ δ[k + k ] x[n].5.5 3 4 5 6 tidsindeks n Vi skriver x[n] som x[n] = x [n]+x 4 [n]+x 5 [n]+x 6 [n]+x 7 [n] slik at hvert ledd i summen er referert til med hvilken harmonisk dette leddet representerer. Vi har tidligere vist at ( πk n ) cos DFT δ[k k ]+ δ[k+k ] og kan utfra dette finne X[k] for vårt signal, når = 4..474 e j.577 δ[k ]+.474 e j.577 δ[k + ]+.36 e j.8769 δ[k 4]+.36 e j.8769 δ[k + 4]+.4884 e j.85 δ[k 5]+.4884 e j.85 δ[k + 5]+.94 e j.4488 δ[k 6]+.94 e j.4488 δ[k + 6]+.3 δ[k 7] +.3 δ[k 7] ISTITUTT FOR IFORMATIKK 7 ISTITUTT FOR IFORMATIKK 8 Figuren viser 4-punkts DFT en over intervallet k. Vi ser da at spektret består av deltapulser, som kan plottes over / < k /. X[k] 8 6 4 Absoluttverdi av DFT spektrum for periodisk signal.36 ( e j.577 δ[k ] + e j.577 δ[k + ] ) + 5 5 5 3 35 4.68 ( e j.8769 δ[k 4] + e j.8769 δ[k + 4] ) + Fase av DFT spektrum for periodisk signal.44 ( e j.85 δ[k 5] + e j.85 δ[k + 5] ) +.47 ( e j.4488 δ[k 6] + e j.4488 δ[k + 6] ) + X[k] 5 5 5 3 35 4.65 ( δ[k 7] + δ[k 7] ) Ettersom / < k er negativ-frekvens aliaser til / < k, kan vi også plotte over intervallet k. Merk at X [ k]. år vi har X[k] e j X[k] vil det si at X[ k] = X[k] e j X[k] I Matlab finner vi enkelt X[k] ved fft(xd,), der xd er den samplede sekvensen x[n]. ISTITUTT FOR IFORMATIKK 9 ISTITUTT FOR IFORMATIKK

Figuren viser 4-punkts DFT en over intervallet / < k /. X[k] 8 6 4 Absoluttverdi av DFT spektrum for periodisk signal Spektrogram DFT finner frekvensinnholdet i et signal, men tar ikke hensyn til variasjoner over tid. 5 5 5 5 Fase av DFT spektrum for periodisk signal Musikk er et eksempel på et audiosignal der frekvensinnholdet kan forventes å variere over tid, det er denne variasjonen som gjør signalet til musikk. X[k] 5 5 5 5 Merk at X [ k]. år vi har vil det si at X[k] e j X[k] X[ k] = X[k] e j X[k] Opprinnelig og normalisert frekvens, f og ˆω, ˆω k = πk og f k = ˆω kf s π = kf s I tillegg, hvis vi sampler signalverdier over lang tid vil det å beregne en DFT over hele sekvensen være veldig ressurskrevende. Løsningen er å dele opp lange sekvenser i mange korte, for så å analysere dem med hver sin DFT. Dette gir færre regneoperasjoner per DFT og det beregnede spektralinnholdet kan antas å være representativt for hele sekvensen. Webster sier: Et fotografi av eller et diagram over et spektrum ISTITUTT FOR IFORMATIKK ISTITUTT FOR IFORMATIKK Spektrogram Anta en sekvens med ubestemt lengde, x[m]. Den tidsavhengige DFT en til dette signalet defineres som X[k, n] = L m= for k =,,..., oen viktige punkter er w[m]x[n + m]e j(πk/)n w[m] er et tidsvindu, f.eks. et firkant-, Hann- eller Hamming-vindu. Vinduet er forskjellig fra kun over intervallet m =,,..., L, der L. x[n+m] sørger for at summen bruker sekvensverdier fra x[n] til x[n + L ] produktet w[m]x[n + m] representerer sekvensverdier fra x[n] til x[n + L ], vektet etter tidsvinduets form Eksempel Anta det udefinert lange signalet x[n] =.3 cos(π/5n) +. cos(π/8n + π/6) og et Hann-vindu.5.5 cos ( π L w[n] = n) n L ellers Vi fikserer vinduet over intervallet n L, og skifter signalet mot venstre etterhvert. Slik vil nye utsnitt av x[n], hver med lengde L, bli synlige gjennom vinduet. flytter/forskyver ISTITUTT FOR IFORMATIKK 3 ISTITUTT FOR IFORMATIKK 4

Figuren viser signalet x[n] signalet x[n + ], skiftet plasser til venstre, og utsnitt tatt av det fast plasserte Hann-vinduet signalet x[n + 5], skiftet 5 plasser til venstre, og utsnitt tatt av det fast plasserte Hann-vinduet.5.5 Signalet x[n] 3 4 5 6 7 Fiksert lengde 5 Hann vindu og utsnitt av skiftet signal x[n+].5.5 3 4 5 6 7 Fiksert lengde 5 Hann vindu og utsnitt av skiftet signal x[n+5].5.5 3 4 5 6 7 tidsindeks n X[k, n] er en todimensjonal sekvens, der k-dimensjonen representerer frekvens, ettersom ˆω k = πk/ er den k-te analysefrekvensen n-dimensjonen representerer tid Det finnes altså et tidslokalt spektrum for hver tid n, men ikke noe tidsuavhengig og varig spekter for alle n. For å vise X[k, n] bruker vi derfor et spektrogram. I punktet (n, k) representeres verdien X[k, n] ved hjelp av f.eks. farger, gråtoner eller konturkurver. I tilfellet med gråtoner representerer sort en høy verdi, mens små verdier vises som nesten hvite. DFT beregnes for de samplene som er synlige gjennom vinduet. ISTITUTT FOR IFORMATIKK 5 ISTITUTT FOR IFORMATIKK 6 Eksempel, Matlab Følgende Matlab-kode er nødvendig: Eksempel Vi bruker et samplet signal fra et tidligere eksempel x[n] =.474 cos(.πn +.577).36 cos(.πn +.8769).4884 cos(.5πn.85).94 cos(.8πn.4488).3 cos(.85πn) Anta at vi har 4 sampler av x[n] totalt, samplet med raten f s = 4 Hz. Vi velger et firkantvindu w[n] n L w[n] = ellers n = :4; FFT = 4; overlap = round(.6 FFT ) ; xd =.474 cos(. pi n +....577) +....36 cos(. pi n +....8769) +....4884 cos(.5 pi n....85) +....94 cos(.8 pi n....4488) +....3 cos(.85 pi n ) ; window = ones (,FFT ) ; [X, F, T] = specgram ( xd, FFT, fs, window, overlap ) ; figure ; imagesc (T, F, abs (X ) ) ; axis xy, colormap( gray ) xlabel ( tid i sekunder ) ; ylabel ( frekvens i Hz ) ISTITUTT FOR IFORMATIKK 7 ISTITUTT FOR IFORMATIKK 8

Eksempel, resultat Koden produserer følgende figur Ekstra eksempel Varierende frekvens, viser Matlab-kode for generering av to chirp er, en lineært stigende og en kvadratisk avtagende. frekvens i Hz 8 6 4 8 6 4 t =:.:4; fs = ; FFT = 8; winlength = FFT ; % l i n. stigning, fra 5 Hz t i l 45 Hz % paa 4 s y=chirp ( t,5,4,45);...3.4.5.6.7.8.9 tid i sekunder Kun de positive frekvensene vises, ettersom X[k, n] er symmetrisk for reelle signaler. På figuren ser vi frekvensene f k, som, fordi k = f k /f s, tilsvarer frekvensindeksene k. Det er altså diskrete frekvenser på figuren. % kvadratisk synkende fra 4 Hz t i l % 5 Hz paa 4 s y=chirp ( t,4,4,5, q, [ ], concave ) ; y = y+y ; figure ; % faar automatisk et Hanning vindu % med lengde winlength specgram ( y, FFT, fs, winlength,... round(.75 FFT ) ) ; ISTITUTT FOR IFORMATIKK 9 ISTITUTT FOR IFORMATIKK 3 Ekstra eksempel Koden produserer følgende figur, nå en variant i farger. 5 45 4 35 Spektrogrammets frekvensoppløsning Her gjelder samme forhold som tidligere beskrevet, at vinduslengden L og frekvensoppløsningen ω er omvendt proporsjonale. Et firkantvindu med lengde L = T /T s sampler har en hovedlobebredde (frekvensoppløsning) ω = 4π L f s rad/s Frequency 3 5 5 mens for et Hamming-vindu vil denne bredden være det dobbelte ω = 8π L f s rad/s 5.5.5.5 3 3.5 Time Kun de positive frekvensene vises, ettersom X[k, n] er symmetrisk for reelle signaler. Lengre vinduer vil øke frekvensoppløsningen, men ulempen er en dårligere tidsoppløsning. For store L vil raske variasjoner bli vanskelige å oppdage, ettersom DFT en beregnes over så mange sampler. Dette kalles usikkerhetsprinsippet i Fourier spektralanalyse. ISTITUTT FOR IFORMATIKK 3 ISTITUTT FOR IFORMATIKK 3

Fast Fourier Transform (FFT) DFT, definisjon n= x[n]e j(π/)kn for k =,,..., Hvor mange regneoperasjoner må utføres for en generell, kompleks x[n]? Vi skriver om til ( ) x R [n] + jx I [n] n= ( ) cos(πkn/) j sin(πkn/) og ser at for hver gir det beregninger av trigonometriske funksjoner 4 reelle multiplikasjoner + ( ) = 4 reelle addisjoner For alle frekvensindeksene gir det beregninger av trigonometriske funksjoner 4 reelle multiplikasjoner (3 ) = 4 reelle addisjoner Antall operasjoner som må utføres er altså av orden. FFT er er et sett med algoritmer som kan utføre samme beregning som en DFT, men med færre operasjoner. Splitt-og-hersk fører oss til FFT som gjør det mulig å utføre samme beregning med orden log operasjoner. Et krav er at er en potens av, og slike algoritmer kalles radix- algoritmer. Webster sier om radix: primærkilde, planterot, roten til en ryggmargsnerve ISTITUTT FOR IFORMATIKK 33 ISTITUTT FOR IFORMATIKK 34 Utlede FFT fra DFT. Skriv opp en -punkts DFT for en (muligens forlenget) sekvens x[n] med lengde. DFT {x[n]} = n= x[n]e j(π/)kn. Splitt summen to, med en sum for ledd der n er et partall og den andre for ledd der n er et oddetall. ( x[]e j + x[]e j(π/)k + + = x[ ]e j(π/)( )k ) + ( x[]e j(π/)k + x[3]e j(π/)3k + + x[ ]e j(π/)( )k ) / l= / l= x[l]e j(π/)k(l) + x[l + ]e j(π/)k(l+) 3. Trekk ut ledd av den andre summen som ikke er avhengige av l / l= x[l]e j(πk/)(l) + e j(πk/) / l= x[l + ]e j(πk/)(l) 4. Skriv om (πk/)(l) til (πk/(/))l / l= x[l]e j(πk/(/))l + e j(πk/) / l= x[l + ]e j(πk/(/))l å er hver sum på DFT-form, og vi har DFT / {x[l]}+ e j(πk/) DFT / {x[l + ]} = X E / [k] + e j(πk/) X O / [k] Essensielt det samme fra IDFT ISTITUTT FOR IFORMATIKK 35 ISTITUTT FOR IFORMATIKK 36

5. Hver DFT gir en / lang vektor som utgang, men ettersom X O / [k + /] = XO / [k] X E / [k + /] = XE / [k] kan vi periodisk utvide for k /. 6. Videre steg er å rekursivt dele opp hver DFT, helt til man sitter med / DFT er med lengde. Denne dekomposisjonen går på log () steg, ettersom er på formen n. To-punkts DFT ene er trivielle X [] = x [] + x [] X [] = x [] + e jπ/ x [] = x [] x [] FFT, antall operasjoner En -punkts DFT kan beregnes ved to /-punkts DFT er, etterfulgt av komplekse multiplikasjoner og komplekse addisjoner. Multiplikasjoner: Addisjoner: µ c () = µ c (/) + α c () = α c (/) + Det er kjent at µ c () = og α c () =, så vi kan jobbe oss derfra og finne at µ c (4) = 4 α c (4) = 8 µ c (8) = 6 α c (8) = 4, o.s.v. Totalformler for antall reelle operasjoner µ r () = 4(log () ) α r () = log () Generelt kan vi si at antall operasjoner er av orden log (), i forhold til for direkte DFT. Eksempelvis, for = 4 trenger DFT over millon operasjoner, mens for radix- FFT holder det med (4 log (4)), som gir noe over operasjoner. ISTITUTT FOR IFORMATIKK 37 ISTITUTT FOR IFORMATIKK 38