[seuraava luku] [edellinen luku] [sisällysluettelo]

2 Spektrianalyysi

Spektrianalyysimenetelmillä voidaan tutkia muun muassa paineen jakautumista eri taajuuksilla. Spektrianalyysilla tarkoitetaan tässä tekstissä laskennallista menetelmää, jolla ns. aika-alueella olevan signaali muunnetaan taajuusalueelle. Spektrianalyysi voi olla yksittäinen, rajatun aikajakson taajuusjakaumaa selvittävä toimenpide. Peräkkäisten spektrianalyysien muodostaman sarjan avulla voidaan myös tarkastella ajassa tapahtuvaa spektrin vaihtelua. Spektrianalyysimenetelmiä on useita. Digitaalisessa signaalinkäsittelyssä yleisimpiä ovat Fourier-muunnoksen eri versiot ja sovellukset.

Musiikkiäänitteiden analysoinnissa spektrianalyysilla voidaan saada tietoa esimerkiksi soittimen äänensävystä tai sävyn muutoksista ajassa. Muita sovellusalueita ovat musiikkiesitysten tulkinnan analyysi sekä soittajien ja laulajien äänenmuodostuksen tutkimus. Spektrianalyysimenetelmiä on käytetty myös tietokonemusiikin sävellyksessä.

2.1 Musiikkisignaali

Musiikkisignaalilla tarkoitetaan tässä artikkelissa akustisessa tai sähköisessä muodossa olevaa aaltoliikettä, joka on tuotettu musiikkiesityksellä. Musiikkisignaali voi sisältää esimerkiksi laajamittaisen sävelteoksen tai yksittäisen sävelen tai sen osan. Musiikin käsitteeseen sinänsä ei tässä tekstissä oteta kantaa.

Akustinen musiikkisignaali on ilmanpaineen edestakaista vaihtelua staattisen ilmanpaineen suhteen. Analoginen sähköinen musiikkisignaali voi olla esimerkiksi sähköjännitteen tai magneettisuuden vaihtelua. Digitaalinen musiikkisignaali on numeeriseen muotoon koodattua aaltoliikettä.

Akustinen musiikkisignaali voidaan muuntaa digitaaliseksi mikrofonin avulla tehtävän akustissähköisen ja analogia-digitaalimuuntimen avulla tehtävän sähkönumeerisen muunnosprosessin kautta. Mikrofonilla suoritetussa akustissähköisessä muunnoksessa ilmanpaineen vaihtelu muunnetaan sähköjännitteen vaihteluksi. Tavanomaisella analogia-digitaalimuuntimella sähköjännitteesta otetaan näytteitä jollakin vakiotaajuudella ja jokaiselle näytteelle annetaan sen jännitetasoa vastaava numeroarvo. Näin saadut ns. pulssikoodimoduloidut (engl. lyh. PCM) ääninäytteet voidaan esittää kokonais- tai reaalilukujen jonona. Lukujonon arvot voidaan esittää kaksiulotteisella graafisella kuvaajalla, joka kuvaa paineen vaihtelua ajan suhteen. Paineen vaihtelun ohella puhutaan myös signaalin voimakkuudesta eli amplitudista. Amplitudi tarkoittaa tietyllä aikavälillä vallitsevaa paineenvaihtelun laajuutta. Kaksiulotteista aika/paine- tai aika/amplitudikuvaajaa kutsutaan oskillogrammiksi (Kuva 2.1).

Alttoviulun vapaan c-kielen oskillogrammi, kesto 0,5 s

Kuva 2.1: Alttoviulun vapaan c-kielen oskillogrammi

Kuvassa 2.1 on alttoviululla jousella soitetun vapaan a-kielen alukkeen oskillogrammi. Kuvaajan ajallinen kesto on 0,5 sekuntia. Kuvassa 2.2 on samasta äänitteestä tulostettu oskillogrammi noin 0,4 sekunnin päästä äänen syttymisestä, kestoltaan 50 millisekuntia. Kuvassa näkyy karkeasti äänen aaltomuoto. Kuvaajaa voidaan tarkentaa edelleen lyhentämällä kuvattavaa aikajaksoa. Tarkimmillaan oskillogrammilla voidaan tarkastella yksittäisten signaalinäytteiden arvoja.

Alttoviulun vapaan a-kielen oskillogrammi

Kuva 2.2: Alttoviulun vapaan a-kielen oskillogrammi, kesto 0,05 s

2.2 Fourier-muunnos

Fourier-muunnoksen teorian pani alulle ranskalainen matemaatikko Jean Baptiste Joseph Fourier (1768-1830) teoksellaan La théorie analytique de la chaleur (1822). Fourierin teorian mukaan mikä tahansa periodinen (ts. samanlaisena toistuva) aaltoliike on hajotettavissa harmonisessa suhteessa olevien siniaaltojen sarjaksi. Fourier kehitti matemaattisen muunnosfunktion, jolla aika-alueella oleva aaltoliike voidaan muuntaa taajuusalueelle ja käänteisen funktion, jolla signaali muunnetaan takaisin aika-alueelle. Muunnosta aika-alueelta taajuusalueelle kutsutaan Fourier-analyysiksi ja käänteistä muunnosta synteesiksi.

Fourier-muunnoksesta kehitettiin 1900-luvulla digitaaliseen signaalinkäsittelyyn soveltuvia versioita. Fourier-muunnosta sovelletaan useilla eri signaalinkäsittelyn alueilla, esimerkiksi akustiikassa, äänenkäsittelyssä, kuvankäsittelyssä ja tietoliikenteessä. Fourier-muunnosten matematiikkaa ja tietokonetoteutuksia on käsitelty yksityiskohtaisesti monissa signaalinkäsittelyteoksissa (mm. Oppenheim ja Schafer 1975:87-135,285-336, Moore 1990:61-111). Tämä artikkeli keskittyy Fourier-muunnosten käytännön sovelluksiin. Joitakin Fourier-muunnosten periaatteita on kuitenkin syytä selvittää artikkelin pohjana olevien mittausten ja oheisten kuvaajien ymmärtämiseksi.

Tietokonetoteutuksia käsiteltäessä Fourier-muunnokset voidaan jakaa kolmeen päätyyppiin:

  1. Yleinen, teoreettinen Fourier-muunnos, joka toimii äärettömän pitkällä signaalilla
  2. Diskreetti Fourier-muunnos (lyh. DFT), joka toimii äärellisellä määrällä ajallisesti tasavälein otettuja signaalinäytteitä
  3. Laskennallisesti optimoitu, nopea Fourier-muunnos (lyh. FFT), joka toimii näytejonolla, jonka pituus on jokin 2:n kerrannainen.

Musiikkisignaali ei sinällään täytä yleisen Fourier-muunnoksen äärettomän periodisuuden vaatimusta muussa kuin siinä teoreettisessa erikoistapauksessa, että signaalilla ei ole alkua eikä loppua, ja se soi muuttumattomana. Diskreetillä tai nopealla Fourier-muunnoksella voidaan käsitellä rajattua ääninäytejonoa. Tällöin oletetaan teoriassa, että käsiteltävä ääninäytejoukko sisältää signaalin yhden periodin.

Fourier-muunnosfunktio ottaa parametrikseen joukon aika-alueella olevia reaali- tai kompleksilukuja, jotka kuvaavat paineen vaihtelua ajan suhteen. Funktio tuottaa yhtä suuren joukon taajuusalueella olevia kompleksilukuja, ns. Fourier-pisteitä, jotka ilmaisevat signaalin spektrin. Kompleksiluvut voidaan muuntaa reaalilukupareiksi, jotka kuvaavat signaalin magnitudin ja vaiheen vaihteluja taajuuden suhteen. Magnitudin ohella kirjallisuudessa puhutaan myös amplitudista. Termien merkitysero on pieni ja voi esimerkiksi johtua tavasta, jolla arvo on johdettu vastaavasta Fourier-muunnoksen tuottamasta kompleksiluvusta (ks. esim. Ifeachor ja Jervis 1993: 49-50). Magnitudi- ja vaihetieto voidaan palauttaa kompleksiluvuiksi ja muuntaa takaisin aika-alueelle päinvastaisella Fourier-muunnoksella. Muunnosprosessi on symmetrinen, eli takaisin aikatasolle muunnettu signaali on sama kuin alkuperäinen. Kahden Fourier-pisteen välistä taajuusaluetta kutsutaan tässä artikkelissa Fourier-kaistaksi.

Myös taajuusalueelle muunnettu signaali on periodinen. Yhden perioidin pituus on hertseinä sama kuin signaalin näytteenottotaajuus. Yleisesti taajuusalue esitetään rajattuna yhden periodin mittaiseksi ja normalisoituna välille -fs/2..+fs/2 - 1, jossa fs on näytteenottotaajuus. Jos Fourier-muunnosfunktiolle syötetyt luvut ovat reaalilukuja (ts. kompleksilukuja, joiden imaginääriosan arvo on 0), funktio tuottaa symmetrisen spektrin 0 hertsin molemmin puolin. Koska pulssikoodimoduloidut ääninäytteet ovat yleisimmin reaalilukuja, spektrin negatiiviset taajuudet voidaan jättää pois ja käsitellä pelkästään positiivista puolta 0 hertsin ja ns. Nyqvistin taajuuden välillä. Nyqvistin taajuus eli ns. ylärajataajuus on puolet näytteenottotaajuudesta eli fs/2. Korkein digitaaliäänitteessä toistettava taajuus on fs/2 - 1. Toisin sanoen värähtelystä on saatava enemmän kuin kaksi näytettä periodia kohti, jotta se voidaan toistaa oikeanlaisena.

Jos analysoitavan signaalin periodin pituutta eli perustaajuutta ei tiedetä tai se vaihtelee, Fourier-muunnos tuottaa likiarvoisen spektrin, joka kuvaa signaalijakson keskimääräisiä magnitudi- sekä vaihearvoja, ja jonka tarkkuus ja luotettavuus riippuu muunnettavan jakson pituudesta. Tarkka taajuusresoluutio vaatii pitkää ns. aikaikkunaa, eli signaalijaksoa. Tämän kääntöpuolena on, että aikaikkunan sisällä mahdollisesti tapahtuvat spektrin muutokset pyöristyvät. Fourier-muunnoksen tarkkuuden valinnassa on tehtävä kompromissi sen suhteen, halutaanko tarkkuutta taajuus- vai aika-alueella. Jos taajuus halutaan tietää tarkasti, ajassa tapahtuvat muutokset pyöristyvät. Jos taas halutaan tietää muutosten ajankohta tarkasti, taajuusresoluutiota on heikennettävä.

Aikaikkuna on usein painotettu siten, että ikkunan laidoilla olevat näytteet häivytetään. Tällä pyritään pienentämään spektrianalyysin vääristymiä, joita esiintyy erityisesti silloin, kun aikaikkuna ei ole täsmälleen signaalin jakson pituinen (Moore 1990: 97). Häivyttämiseen käytettyjä painotusikkunoita on useita eri tyyppejä. Yksi yleisimmistä on ns. Hanning-ikkuna, Se muistuttaa käänteistä kosinifunktiota, ja saa arvoja välillä 0..1. Kuvassa 2.3 on 100 alkion mittainen Hanning-ikkuna. Painotus tapahtuu kertomalla kukin analysoitavan aikaikkunan näyte samanpituisen painotusikkunan vastaavalla arvolla. Hanning-ikkunaa käytettäessä ikkunoidun signaalin voimakkuus alkaa nollasta, kasvaa ikkunan puolivälissä täyteen voimaakkuuteensa ja pienenee lopussa uudestaan nollaan.

Hanning-ikkuna

Kuva 2.3: Hanning-ikkuna

Nopeaa Fourier-muunnosta (lyh. FFT) käytettäessä aikaikkunan näytteiden määrän tulee olla jokin 2:n potenssi. Aikaikkuna voidaan kuitenkin säätää pienemmäksi, jos painotusikkunoinnin jälkeen ikkunan päihin lisätään nolla-arvoisia näytteitä niin, että määrä on tasan jokin 2:n potenssi. Näin aika/taajuusesityksen tarkkuutta voidaan säätää yhden näytteen tarkkuudella. Toinen tapa täsmätä aikaikkuna ja Fourier-pisteiden määrä on ns. uudelleennäytteistää (engl. resampling) aikaikkunoitu signaalijakso, ja säätää näytteenottotaajuus sellaiseksi, että signaalin perustaajuuden yksi periodi tulee mahdollisimman täsmällisesti aikaikkunan pituiseksi (McAdams ym. 1999).

Pitkien, ajassa muuttuvien signaalien analyysissa käytetään ns. lyhyen aikavälin Fourier-muunnosta (engl. Short-Time Fourier Transform, lyh. STFT). Se on yhdistelmä peräkkäisistä, usein ajassa limitetyistä, aikaikkunoista tehdyistä Fourier-muunnoksista. Lyhyen aikavälin muunnoksissa voidaan ikkunapituuden lisäksi säätää ikkunoiden limityskerrointa. Aika/taajuusresoluutioon tulee näin yksi tekijä lisää.

2.3 Fourier-analyysin graafiset kuvaajat

Yhden diskreetin Fourier-analyysin tulos voidaan kuvata graafisesti kahdella kaksiulotteisella kuvaajalla, joista toinen kuvaa signaalin magnitudia ja toinen vaihetta taajuuden suhteen. Näistä kuvaajista käytetään yksinkertaisesti nimitystä spektri tai taajuusvaste. Tarkemmin puhutaan magnitudispektristä (tai magonitudivasteesta) tai vaihespektristä (tai vaihevasteesta). Useimmiten Fourier-analyysin tulkinnassa rajaudutaan pelkän magnitudikuvaajan tarkasteluun. Siksi termillä spektri tai taajuusvaste tarkoitetaan myös pelkästään magnitudikuvaajaa.

Lyhyen aikavälin muunnoksen kuvauksessa käytetään yleisesti kolmiulotteisia kuvaajia, joita kutsutaan spektro- tai sonogrammeiksi. Spektrogrammissa on sarja peräkkäisiä kaksiulotteisia kuvaajia, jotka kuvaavat spektrin (joko magnitudien tai vaiheiden) muuttumista ajassa. Spektrogrammit esitetään tavallisesti kolmiulotteisessa koordinaatistossa, jonka akseleina ovat taajuus, aika ja magnitudi (tai vaihe). Katselukulma voi vaihdella eri akselien suhteen esimerkiksi havainnollistamistarpeiden mukaan. Sonogrammi on spektrogrammin erityistapaus, jossa spektrogrammi kuvataan suoraan magnitudiakselin yläpuolelta. Sonogrammeissa kuvataan yleensä vain magnitudiarvoja. Niissä taajuus esitetään pystyakselilla ja aika vaaka-akselilla. Magnitudiarvot kuvataan tummentumina tai eri värein aika- ja taajuusakselien muodostamassa kartassa.

Kuvassa 2.4 on magnitudispektri kuvan 2.2 aika-alueella esitetystä signaalista.

Alttoviulun vapaan a-kielen magnitudispektri

Kuva 2.4: Alttoviulun vapaan a-kielen spektri

Kuvassa 2.5 on sama näyte, jossa taajuusakseli on kuvattu logaritmisesti ja magnitudiakseli on kuvattu desibeleinä.

Vapaan a-kielen spektri desibeleinä

Kuva 2.5: Vapaan a-kielen spektri desibeliasteikolla

Kolmiulotteisessa spektrogrammissa on kolme akselia, x, y ja z. Niistä x-akselilla kuvataan yleensä taajuus, y-akselilla aika ja z-akselilla magnitudi tai vaihe. Taajuusakseli voidaan piirtää joko lineaarisesti, jolloin hertsiluvut jakautuvat tasavälein, tai logaritmisesti, jolloin oktaavialat jakautuvat tasavälein. Magnitudi- tai vaiheakseli voidaan kuvata lineaarisesti mielivaltaisen suuruisina arvoina tai logaritmisesti, jolloin mittayksikkönä käytetään useimmin desibeliä. Aika-akseli kuvataan lähes aina lineaarisesti esimerkiksi sekunneissa.

Kuvassa 2.6 on spektrogrammi samasta äänitteestä kuin kuvan 2.1 oskillogrammissa. Kuvattu taajuusalue on 0-20 kHz. Kuvassa korkeita taajuuksia on korostettu, jotta korkeataajuustoiston ulottuvuutta voidaan tarkastella.

vapaan a-kielen spektrogrammi

Kuva 2.6: Vapaan a-kielen spektrogrammi 0-20 kHz

Kuvasta 2.6 näkyy karkea yleiskuva äänen rakenteesta ja siitä voidaan tarkastella esimerkiksi korkeiden osaäänten syttymisnopeutta. Kuvaajan karkeus johtuu analyysitiedon suuresta määrästä sekä tietokoneen tavanomaisen näyttöruudun esitystarkkuudesta. Paperitulostuksessa kuvaajista voidaan saada tarkempia. Yksityiskohtaisempaa tietoa voidaan myös saada rajaamalla kuvaajaan pienempi osa taajuuskaistasta.

Kuvassa 2.7 on spektrogrammi samasta samasta äänitteesta taajuusalueella 0-2 kHz. Kuvaajassa näkyy selvästi äänen neljä alinta yläsäveltä. Lisäksi äänen alukkeessa näkyy vaimeita osaääniä, jotka todennäköisesti syntyvät jousen koskettaessa kieliä.

a-kielen spektrogrammi 0-2 kHz

Kuva 2.7:Vapaan a-kielen spektrogrammi 0-2 kHz

Äänianalyysissa kuvaajat soveltuvat hyvin erityisesti lyhyiden, noin sekunnin suuruusluokkaa olevien äänitapahtumien havainnollistamiseen. Sonogrammeilla puolestaan voidaan tutkia useiden minuuttien mittaisia näytteitä. Sonogrammit ovat kuitenkin spektrogrammeja epätarkempia magnitudiarvojen kuvauksessa. Tässä artikkelissa kaytetään spektrogrammeja, koska analyysit tehdään vain noin puolen sekunnin mittaisista tapahtumista. Artikkelissa käytetään ainoastaan magnitudivastekuvaajia, joiden tulkinta on helpompaa kuin vaihevastekuvaajien.

2.4 Fourier-analyysin kehitelmiä ja muita analyysimenetelmiä

Lyhytaikaista Fourier-analyysia on käytetty ns. vaihevokooderin (engl. Phase Vocoder) toteutuksessa. Siinä Fourier-analyysista jokaista Fourier-kaistaa kohti lasketaan taajuus- ja magnitudi- tai amplitudiarvo. Analysoitu ääni voidaan syntetisoida uudelleen esimerkiksi ohjaamalla parametritiedolla joukkoa siniäänioskillaattoreita.

Vaihevokooderin pohjalta kehitettiin ns. siniaaltomallinnus (Sinusoidal Modeling), jossa lasketaan taajuus- ja magnitudiarvot ainoastaan spektrin huippuarvoille. Lisäksi menetelmässä taajuusarvojen muutoksia seurataan ajassa siten, että ne voivat siirtyä Fourier-kaistalta toiselle. Menetelmällä tiedon määrää on pyritty vähentämään tavanomaisesta lyhytaikaisesta Fourier-muunnoksesta. Samalla on pyritty helpottamaan äänenmuokkausta ja parantamaan muokattujen tulosten äänenlaatua. Siniaaltomallinnusta on sovellettu muun muassa musiikisignaalin ja puheäänen uudelleensynteesiin ja tiedon pakkaukseen (mm. Anderson 1996). Mallinnusmenetelmää on laajennettu tuomalla mukaan siniäänien lisäksi stokastinen kohinakomponentti (engl. "Sinusoids + Noise", Serra 1997). Myöhemmin on tehty kokeita mallin laajentamiseksi kohinan lisäksi transienttikomponentilla ("Sinusoids + Noise + Transients", Levine 1998). Näitä menetelmiä on sovellettu muun muassa äänenmuokkauksessa ja äänisignaalin kompressoinnissa.

Fourier-analyysia on musiikkisignaalin analyysivälineenä arvosteltu siitä, että se ei kuvaa äänen taajuusaluetta samalla tavoin kuin ihmiskorva tai -aivot sen havaitsevat. Fourier-analyysi on taajuuden suhteen lineaarinen, kun taas ihmiskorva on taajuuden suhteen (karkeasti) logaritminen. Tämä ilmenee muun muassa länsimaisissa sävelasteikoissa, erityisesti tasavireisessä kromaattisessa asteikossa. Siinä sävelkorkeuden nostaminen oktaavilla merkitsee taajuuden kaksinkertaistumista. Oktaavin sisällä taajuusalue on jaettu logaritmisesti kahteentoista säveltasoon.

Sävelasteikkojen ja Fourier-analyysin ristiriita tarkoittaa käytännössä sitä, että Fourier-kuvaajat ovat matalilla sävelkorkeuksilla epätarkempia kuin korkeilla. Tähän ongelmaan on esitetty ratkaisuna muita spektrianalyysimenetelmiä, esimerkiksi vakio-Q-muunnosta (engl. constant Q transform, Brown 1991) ja aallokemuunnosta (engl. Wavelet transform). Myös Fourier-muunnoksesta on kehitetty paremmin kuulohavaintoa vastaavia moniresoluutioisia toteutuksia (Anderson 1996, Levine 1998).

Siniäänimallinnuksen eri versiot, aallokeanalyysi sekä vakio-Q-menetelmä tarjoavat myös graafisia kuvaustapoja. Säveltasojen vaihtelua sisältävien äänitteiden analyysissa ja joissakin äänenkäsittelytehtävissä taajuuden suhteen logaritmiset analyysimenetelmät voivat olla havainnollisempia kuin tavanomainen lyhyen ajan Fourier-analyysi. Yläsävelrakenteen graafisessa kuvauksessa Fourier-muunnokselle on kuitenkin vaikea löytää korvaajaa. Tässä artikkelissa on keskitytty juuri tavanomaisen lyhytaikaisen Fourier-muunnoksen 3-ulotteisiin kuvaajiin. Syinä tähän on muun muassa analyysiohjelmien suhteellisen yksinkertainen toteutus, kuvaajien havainnollisuus, parametrien säädön helppous, ja mahdollisuus kuvata yksi äänitapahtuma yhdellä kuvaajalla (mikäli tulostimen tarkkuus on riittävä).


[seuraava luku] [edellinen luku] [sisällysluettelo]

Copyright © 2001, 2006 Pekka Mikael Laine & Kai Lassfolk. All Rights Reserved.