Lühiajaline Fourier' teisendus

**Lühiajaline Fourier' teisendus** (edaspidi **LFT**) (inglise keeles *Short-time Fourier transform*, lühendatult STFT) on Fourier' tüüpi teisendus, mis on mõeldud ajas muutuva signaali sageduskomponentide tükkhaaval leidmiseks. Võrreldes tavalise Fourier' teisendusega, mis teisendab kogu signaali korraga, võtab LFT signaalist lühemad, ühtlase pikkusega tükid ning rakendab Fourier' teisendust igalt tükile eraldi. See annab tulemuseks iga tüki kohta eraldi Fourier' spektri. 

## Kasutus
Kuna LFT teisendab signaali tükkide kaupa, on LFTga mugav analüüsida ajas muutuvaid signaale. Seetõttu kasutatakse LFTd sageli näiteks helisignaalide mõõtmiseks, analüüsimiseks ja töötluseks.

Näiteks saab kasutada LFTd heli spektri graafiliseks kuvamiseks kas spektrogramm või *waterfall graph*'i tüüpi graafikutel, millega on lihtne ja mugav visuaalselt vaadelda ja analüüsida heliklipi või helisignaali sageduslikku sisu. 

Samuti saab kasutada LFTd mudelite simuleerimisel ja mõõtmisel. Näiteks kui võtta mõni pill, mängida sellel mingi noot, seda signaali mõõta või salvestada, rakendada sellele LFT teisendus ning seejärel kuvada tulemused *waterfall graph*'i tüüpi graafikul, saame näha instrumendi signaali sumbumisomadusi selle noodi juures, kuna näeme, kuidas muutub signaali sageduslik sisu, üle mõõdetud perioodi. Sama meetodit saab kasutada ka erinevate objektide ja kehade resonantssageduse ja harmoonikute leidmiseks. Samuti saab kasutada LFT-d ka signaali põhisageduse ning harmooniliste komponentide leidmiseks. 

## Matemaatiline esitus
Rakendades LFTd, kasutame aknafunktsiooni, et võtta tükk signaalist ja seda analüüsida. Pärast analüüsi liigutame akent mööda signaali ajas edasi ning analüüsime järgmist signaalist võetud tükki. Protseduur kordub, kuni jõuame kas diskreetse signaali lõpuni või kui ajas muutuv signaal lõppeb.

### Tüki arvutamine
Tüüpiline LFT matemaatiline esitus on järgmine:

X_m(\omega) = \sum_{n= -\infin}^\infin x(n)w(n-mR)e^{-j\omega n}
=DTFT_\omega(x \cdot SHIFT mR(w)),

kus

x(n) tähistab sisendsignaali ajahetkel n

w(n) tähistab aknafunktsiooni (nt Hammingu aknafunktsioon pikkusega M)

X_m(\omega) on diskreetne Fourier' teisendus akna sees olevatest andmetest ajalise keskpunktiga mR

R on hüppe suurus sämplites ehk kahe diskreetse Fourier' teisenduse vahe ehk samm, millega liigutame töödeldava signaali akent mööda signaali ajas.

### Tükkide summeerimine
Kui aknal w(n) on konstantse ülekattega liitmise (*constant OverLap-Add ehk COLA)* omadus hüppe suuruse R juures, siis järjestikused diskreetsed Fourier' pöörded summeeruvad valemiga:

\sum_{m=-\infin}^\infin X_m(\omega) \Delta \triangleq \sum_{m=-\infin}^\infin \sum_{n=-\infin}^\infin
x(n)w(n -mR)e^{-j\omega n}

= \sum_{n=-\infin}^\infin x(n)e^{-j \omega n} \underbrace {\sum_{m=-\infin}^\infin w(n-mR)}_
{1 \Leftrightarrow w \in COLA(R)}

= \sum_{n=-\infin}^\infin x(n)e^{-j \omega n}

\triangleq DTFT_\omega (x) = X(\omega)

Võime öelda, et aknad, mis täidavad nõuet \sum{_m} w(n-mR) = 1 või miingi muu konstant kõikide n \in \Zeta puhul, omavad konstantse ülekattega liitmise omadust. 

Kui kõik üle perioodi arvutatud LFT tükid korrektselt summeerida, on LFT tulemus sama kui kogu signaalile rakendatud diskreetse Fourier' teisenduse tulemus.

### Libisev DFT
Libisev DFT (ingl. k. *sliding DFT)* on LFT alamliik, kus samm on alati ühe sämpli suurune ehk iga mõõtmistulemuse lisandumisel tehakse eraldi diskreetne Fourier' teisendus. See teisendus on väga täpne aga väga töömahukas ning on mõistlik kasutata üldiselt ainult juhtudel, kus on vaja väga täpset analüüsi väga lühikesest signaalist. 

### LFT pöördteisendus
Kuna LFT on mitu järjestikust Fourier' teisendust, saab ka LFTst, nagu ka tavaliselt diskreetsest Fourier' teisendusest või Fourier' kiirteisendusest, võtta LFTst pöördteisenduse, mis viib sagedusruumi viidud signaali tagasi ajaruumi ehk rekonstrueerib algse signaali.

## LFT piirangud ja probleemid
Diskreetse Fourier' teisenduse resolutsioon avaldub valemiga:

fRES =  {f_s \over N}, kus fRES tähistab resolutsiooni ühikus Hz-i sagedusjaotuse kohta ehk kahe sageduskomponendi vahe, f_s diskreetimissagedust Hz-ides ja N sämplite koguarvu.

LFT puhul on akna suurus ehk arvutatavate punktide kogus fikseeritud mis tähendab, et ka LFT resolutsioon on fikseeritud [6]. Mida suurem aken, seda suurem resolutsioon sagedusruumis ning seda rohkem erinevaid sageduskomponente suudame eristada. Samas suurema akna puhul kaotame lahutusvõimet ajaruumis ning ka iga LFT akna Fourier' teisenduse arvutuse aeg on pikem. Väiksema akna puhul suureneb eraldusvõime ajaruumis ning iga akna teisendus on kiirem, kuid eraldusvõime sagedusruumis on madalam ehk suudame eristada vähem erinevaid sageduskomponente. 

## LFT tulemuse visualiseerimine
LFT visualiseerimiseks kasutatakse enamasti kas spektrogrammi või *waterfall*-tüüpi graafikut. 

Joonisel 1 on näha digitaalset helipulti kujutamas sagedusgraafikut ühele oma väljundkanalile reaalajas sagedusruumis. X-teljel on kuvatud sagedused ning Y-teljel vastava sageduse hetkeline amplituud. Et graafikut oleks lihtsam jälgida, on tulbad ka värvidega eraldatud vastavalt amplituudile. 

Joonisel 2 on kujutatud Androidi vabavaraga Advanced Spectrum Analyzer reaalajas elutoa mürataseme mõõtmine. Akna tüübiks Hanning, FFT suurus 2048 sämplit.

Joonisel 3 on kujutatud Androidi vabavaraga Spetroid mõõdetuna muusikapala läbi sülearvuti kõlarite. Ülemisel graafikul on näha hetkeline sagedusinfo, kus X-teljel on kujutatud sagedused ja Y-teljel neile vastav helirõhk. Alumisel spektrogramm graafikul on näha sagedusinfo üle aja liikudes. Akna tüübiks Blackman-Harris.

## Vaata ka
* Fourier' teisendus
* Fourier' spektroskoopia
* Fourier' kiirteisendus
* Sagedusruum
* Spektrogramm

## Viited