Jag försöker ta itu med följande problem medan jag fortfarande inte har en fast uppfattning om vad ”frekvensupplösning” betyder:

Antag att vi samplar en kontinuerlig tidssignal med samplingsperiod Ts = 1/2000 och använder sedan ett fönster med längden 1000 på den resulterande diskreta tidssignalen. Om vi transformerar den med en 2000-punkts DFT, vad skulle dess frekvensupplösning vara?

Kan någon hjälpa mig att räkna ut detta?

Kommentarer

  • Vill du ha en potentiell plotupplösning med interpolering, uppskattning av toppläge med en S / N, resultatseparationsupplösning eller toppseparationsupplösning med separeringskriterier? Alla dessa ger olika frekvensupplösningar för samma längd DFT.
  • @ hotpaw2 Jag skulle vara intresserad om du kan prata om dessa upplösningar i denna eller en annan informativ fråga.

Svar

Redigera:

Jag har insett att min definition nedan av " Frekvensupplösning " är helt fel (liksom OP: s fråga). Frekvensupplösning är hur lika fönsterfunktionens storlek i frekvensutrymme är som Dirac-delta-funktionen. Detta beror på att fönstrets produkt och signalen i tidsdomänen blir fällning i frekvensdomänen ( och en faltning med Dirac delta-funktionen är ett prov som skulle ge perfekt frekvensupplösning) Ju fetare huvudloben (kvantifierad av dess varians), och ju högre sidolob, desto sämre frekvensupplösning. Dessutom kan Tidsupplösning kvantifieras enligt variansen för fönsterfunktionen i tidsdomänen.


Frekvensupplösning är inte binupplösning / bredd. I diagrammet nedan märker du att loberna inte kommer närmare (frekvensupplösning) trots att pappersbredden minskar.

Kredit: Dan Boschen

Frekvensupplösning är snarare en egenskap hos Fourier-transformationen av den rektangulära funktionen (dvs. sinc-funktionen).

Vi måste fönsterfunktioner för att arbeta med Fourier-transformationer (även när vi arbetar teoretiskt). Som en konsekvens arbetar vi alltid med $ f (t) w (t) $ snarare än funktionen $ f (t ) $ själv (här $ w (t) $ är en rektangulär funktion). Genom konvolutionssatsen är Fourier-transformeringen av en fönsterfunktion alltid en faltning av $ \ hat {f} $ med $ \ hatt {w} = $ sinc. Speciellt när $ f $ är sinusformad, kommer $ \ hat {f} $ att vara en Dirac-delta-funktion och fällningen kommer bara att vara ett urval av en sinc-funktion. Således tappar vi regelbundet frekvenser helt när vi fönster, periodiciteten för denna förlust är frekvensupplösning .

Eftersom DTFT i fönsterfönster är en periodisk approximation av CTFT förvärvar den också dessa egenskaper.

Förvirringen uppstår för att när vi inte matar nollor till DFT (dvs. prov $ f (t) w (t) $ där $ w (t) = 1 $ ), soptunnans bredd är lika med frekvensupplösningen.

Vi kan dock också lägga till nollor (dvs också prov $ f (t) w (t) $ där $ w (t) = 0 $ ) och detta resulterar i att DTF bättre interpolerar DTFT på $ f (t) w (t) $ . Överensstämmer med den första grafen.


För att se varför Fourier-transformationen av den rektangulära funktionen är en sinc-funktion titta på den här videon och överväga lindningen av de sinusformade funktionerna (dess ganska involverade dock)


För att svara på OP: s exempel är fackupplösningen $$ \ frac {F_s} {N} = \ frac {2000} {2000} = 1 $$ där $ F_s = 2000 $ Hz är samplingsfrekvensen, och $ N $ DFT-storleken.

Frekvensupplösningen är vad bin-upplösningen skulle vara om vi bara samplade i fönstret (ingen stoppning noll)

$$ \ frac {F_s} {M} = \ frac {1} {T} = 2 $$ där $ M $ är antalet prover i fönstret, $ T $ är provets varaktighet och $ F_s = M / T $ .

Kommentarer

  • Trevligt svar Tom.För att lägga till om det inte är klart använder vi ofta inte ' t ett rektangulärt fönster, men andra fönster som avsmalnar som avsevärt minskar sidolobberna (förbättrar dynamiskt omfång) på bekostnad av nedbrytning frekvensupplösning ytterligare. Ett av mina klassiska klassiska tidningar om detta och tillämpningarna av DFT i allmänhet är av Fred Harris. Jag tror att du ' verkligen gillar det om du inte har ' inte redan har sett det: web.mit.edu/xiphmont/Public/windows.pdf
  • @TomHuntington Trevligt, synd att jag inte kan ' inte rösta två gånger!
  • @TomHuntington Wikipedia vet tydligen ' inte om mina formler eller tekniker. Jag har fortfarande svårt med intrabinupplösning (på grund av brus och ekvationernas känslighet), men närliggande frekvenser kan lösas genom iterativ uppskattning och borttagning. När du tar bort den stora tonen kan den mindre beräknas. När du tar bort den lilla tonen får du en bättre läsning på den stora. Och så vidare, även med flera toner. Varje typ av fönster komplicerar matematiken.
  • Om du har två sinusformar med nästan lika amplitud, men mycket nära i frekvens, kan du använda beatfenomenet i tidsdomänen. Signalens uppenbara frekvens (genom nollkorsningar) är medelvärdet av de två frekvenserna och kuvertets frekvens (om du tar en hel cykel, t.ex. två lober) är halva skillnaden mellan frekvenserna.
  • Upplösning definierar också din precision i vad du än mäter. Det säger ingenting om noggrannhet.

Svar

Beror lite på vad du försöker uppnå.

Om du gör en FFT med längden $ N $ av en signal som samplats vid samplade med en hastighet på $ F_s $ , så säger många att din frekvensupplösning är $ \ frac {F_s} {N} $ . Om det är korrekt eller inte beror verkligen på hur du definierar frekvensupplösning och vad du planerar att göra med det.

Vad som verkligen händer är att du provar en frekvensdomänfunktion med ett sampling intervall på $ \ frac {F_s} {N} $ . Så snart du väljer en FFT-storlek samplar du i båda domänerna med samplingsintervallen $ \ frac {1} {F_s} $ i tid och $ \ frac {F_s} {N} $ i frekvens.

Frekvensdomänprovtagning har samma egenskaper, krav och problem som tidsdomänprovtagning, du kan få aliasing, du kan interpolera, det antas periodicitet i den andra domänen, etc.

Genom att helt enkelt tillämpa samplingssatsen kan vi argumentera för att frekvensupplösningen som krävs för att fullständigt karakterisera en signal helt enkelt är den inversa av längd i tidsdomänen. Detta fungerar bra för signaler som i sig är tidsbundna, till exempel impulssvaret från ett LTI-system.

Men det är inte praktiskt för långa kontinuerliga signaler. I det här fallet måste du välja en frekvensupplösning som är tillräckligt bra för din applikation, och det beror verkligen på dina krav och mål specifik applikation.

Svar

Provtagningen ges av $ {T} _ {s} = \ frac {1} {2000} $ [Sek].
Fönstrets längd är 1000 prover.
Eftersom fönstrets längd måste vara lika med datalängden drar vi slutsatsen att datalängden är 1000 prover vilket innebär att provtagningstiden är $ 0,5 $ [Sek].

Fackupplösningen i DFT är rationen mellan samplingsintervallet till antalet DFT-prover, som i detta fall är 2000. Därför är binupplösningen $ \ frac {1} {4000} $ [Hz].

Svar

FFTs binbredd eller upprepning av repreantation som jag vill kalla det är Fs / N, där N är storleken på FFT. Den faktiska upplösningen beror på fönstret du använder och fönstrets längd.

Till exempel: ett rektangulärt fönster ger maximal upplösning men mindre dynamiskt omfång. Andra mer jämnare fönster ger mindre upplösning med mer dynamiskt omfång eller nedre sidlober.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *