Peatükk 8 Spekter ja spektrogramm

Nagu me juba teame (vt ptk 3.1.3), on kõneheli liitheli, st õhuosakesed võnguvad korraga mitmel sagedusel. Põhitoon on see sagedus, mida me tajume häälekõrgusena. Kõrgemaid osahelisid nimetatakse ülemhelideks. Põhitooni ja ülemhelisid tähistatakse väikese f-iga ja nummerdatakse alates nullist: põhitoon on f0, ülemhelid f1, f2, f3 jne.15

Spekter näitab osahelide amplituude (või läbilõiget erinevate sagedusvahemike intensiivsusest). Spektrijoonisel kujutatakse horisotaalteljel sagedust ja vertikaalteljel intensiivsust. Spektrit võib vaadata kas lühikeseses ajaaknas (üks häälik või hääliku osa) või pikema aja jooksul (kõneleja pikem kõnelõik).

Häälekurdude tekitatava heli koosneb põhitoonist ja selle täisarvkordsete sagedustega ülemhelidest, mille intensiivsus langeb umbes 12 dB oktavi kohta.16 Joonisel 8.1 on kujutatud (sünteesitud) kõrihääle spekter põhitooniga 100 Hz.

Häälekurdude tekitatava heli spekter. Igale spektrikomponendile vastab üks "post": f0 = 100 Hz, f1 = 200 Hz, f2 = 300 Hz, f3 = 400 Hz jne.

Joonis 8.1: Häälekurdude tekitatava heli spekter. Igale spektrikomponendile vastab üks “post”: f0 = 100 Hz, f1 = 200 Hz, f2 = 300 Hz, f3 = 400 Hz jne.

Vahetult häälekurdude tekitatavat heli me aga ei kuule, sest välja pääsemiseks läbib see kõripealse kõnetrakti, et pääseda välja läbi suu (ja nasaalsete häälikute puhul nina). Kõnetrakti võib endale ette kujutada kui käänuga toru, mis ei ole ühtlase läbimõõduga. Selle toru pikkus ja läbimõõt (või läbimõõdud eri kohtades) määravad tema resonantssageduse(d).

Kõnetrakti kuju tingib mingite sagedusvahemike sumbumist ja teiste võimendumist, mis omakorda muudab hääle kõla. Enamgi veel, just selle toru kuju muutmisega me anname kõneldes erinevatele häälikutele erineva kõla. Näiteks kui ütleme /a/, siis teeme suu suhteliselt lahti ja keel liigub suus taha- ja allapoole, tekitades sellise heli, nagu kujutatud joonisel 8.2 vasakul. Kui aga ütleme /e/, siis on suu suletum ja keel liigub ette- ja ülespoole, tekitades sellise heli, nagu on joonisel 8.2 paremal.

Sünteesitud vokaalide spekter: /a/ (vasakul) ja /e/ (paremal).

Joonis 8.2: Sünteesitud vokaalide spekter: /a/ (vasakul) ja /e/ (paremal).

Kui nüüd ühendada kõigi osahelide spektrijoonte tipud omavahel joonega, siis näeme kenasti,17 millised on sageduspiirkonnad, mis kõnetrakti poolt on üles võimendatud (vt joonis 8.3). Seda tippusid ühendavat joont nimetatakse spektri mähisjooneks. Spektri mähisjoonest tõusevad omakorda esile tipud, mida nimetatakse formantideks (tähistatakse F1, F2, F3 jne).

Formandid on eriti olulised just vokaalide kirjeldamisel, sest eriti F1 ja F2 on küllaltki tihedasti seotud keele asukohaga suus. Siin kujutatud vokaalid on sünteesitud Eek & Meister (1998) andmete põhjal, kus /a/ F1 = 670 Hz, F2 = 1070 Hz ja F3 = 2460 Hz ning /e/ F1 = 435 Hz, F2 = 2010 Hz ja F3 = 2545 Hz.

Spektri mähisjoon, mis toob esile formandid. Vasakul /a/, paremal /e/.

Joonis 8.3: Spektri mähisjoon, mis toob esile formandid. Vasakul /a/, paremal /e/.

Spektril on kujutatud intensiivsus ja sagedus, aga puudub ajatelg. Nii on võimalik spektrit vaadata kas ühest ajaaknast või pikemast perioodist staatilisena. Spektri muutusi ajas kujutab spektrogramm. Spektrogrammil on kujutatud horisontaalteljel aeg, vertikaalteljel sagedus ning intensiivsust antakse edasi heleduse-tumedusega. Praati spektrogrammid on must-valged, aga võib teha ka värvilisi spektrogramme, kus intensiivsust tähistab värvitoon. Joonis 8.4 illustreerib spektri ja spektrogrammi seoseid.18

Vasakul sünteesitud vokaali /e/ spektrogramm ja paremal lühikese ajaaknaga spekter vokaali keskpunktist. Nooltega on osutatud formantide asukohad spektris ja spektrogrammil.

Joonis 8.4: Vasakul sünteesitud vokaali /e/ spektrogramm ja paremal lühikese ajaaknaga spekter vokaali keskpunktist. Nooltega on osutatud formantide asukohad spektris ja spektrogrammil.

8.1 Spektrogramm Praati helitoimetamisaknas

Praatis kuvatakse spektrogrammi helitoimetamisaknas, millega tegime tutvust peatükis 6.4. Et spektrogrammi seal näha:

  • Ava Praat ja loe käsuga Read from file... mõni helifail (näiteks POHJA_006-006_M.wav).
  • Ava helitoimetamisaken (SoundEditor) käsuga View & Edit.
  • Menüüst Analyses > Show analysis... pane linnuke kasti Show spectrogram. Teistest kastidest võiks alustuseks linnukesed ära võtta.
Spektrogramm SoundEditoris. Vaikimisi lairibaspektrogramm, analüüsiakna pikkus 0,005 sekundit.

Joonis 8.5: Spektrogramm SoundEditoris. Vaikimisi lairibaspektrogramm, analüüsiakna pikkus 0,005 sekundit.

Nüüd peaks SoundEditori akna alumises pooles olema ainult spektrogramm, nagu on joonisel 8.5.

Sagedusskaala (vertikaalteljel) on vasakul küljel mustade numbritega. Sagedusvahemik on vaikimisi 0-5000 Hz, selles vahemikus on ka kõnesignaalis enamik olulist informatsiooni.

Spektrogrammi resolutsiooni määrab analüüsiakna suurus: mida väiksem on analüüsiaken, seda täpsem on spektrogrammi ajaline resolutsioon, aga halvem sageduslik resolutsioon, pikema analüüsiaknaga paraneb sageduslik resolutsioon, kuid halveneb ajaline resolutsioon. Lühema analüüsiaknaga spektrogrammi nimetatakse lairibaspektrogrammiks. Lairibaspektrogramm (mida Praati toimetamisaknas ka vaikimisi seadetega näidatakse) toob esile formandid (nagu spektri mähisjoon) ja selle põhjal on hea kirjeldada häälikute kvaliteedi erinevusi. Analüüsiakna suurust vähendades saame kitsaribalise spektrogrammi, mis toob välja üksikud osahelid ja mille põhjal saab kirjeldada häälelaadi ja kõrguse varieerumist.

Sünteesitud vokaali /e/ lairibaspektrogramm (vasakul; analüüsiakna pikkus 0,005 sekundit) ja kitsaribaspektrogramm (paremal; analüüsiaken 0,033 sekundit).

Joonis 8.6: Sünteesitud vokaali /e/ lairibaspektrogramm (vasakul; analüüsiakna pikkus 0,005 sekundit) ja kitsaribaspektrogramm (paremal; analüüsiaken 0,033 sekundit).

Spektrogrammi kursor on risti kujuline, horisontaalselt liigub ajateljel (väärtus kuvatakse sekundites punase numbriga helilaine kohale kursori ülemises otsas), vertikaalselt liigub sagedusteljel (väärtus spektrogrammist vasakul punase numbriga hertsides).

Menüüst Spectrogram käsk Spectrogram settings... avab dialoogiakna, kus saab muuta spektrogrammi seadeid.

Spektrogrammi seaded SoundEditoris.

Joonis 8.7: Spektrogrammi seaded SoundEditoris.

  • View range – ekraanil oleva spektrogrammi sagedusulatus. Vaikimisi väärtus on 0-5000 Hz, üldiselt kõne puhul sellest piisabki, ainult üksikute konsonantide puhul on oluline info kõrgemal kui 5000 Hz. Proovi, mis juhtub, kui kirjutad 5000 asemele näiteks 10000 ja vajutad Apply. Algseaded saad tagasi, kui vajutad nuppu Standards.
  • Window length – analüüsiakna pikkus. Sellest sõltub, kas saame kitsaribalise või laiaribalise spektrogrammi. Vaikimisi väärtus on 0,005 sekundit, see annab lairibaspektrogrammi, mis sobib häälikute kvaliteedi analüüsimiseks. Eriti kõrge või madala häälega kõneleja puhul võib selle parameetri täpsustamisega formantide selgema eristuse saavutada. Kitsaribalise spektrogrammi saamiseks sobib 0,033 sekundit. Kitsaribaline spektrogramm toob esile põhitooni täisarvkordsed ülemhelid. Vaata kitsaribalist spektrogrammi. Otsi üles mõni vokaal. Kas mustad jutid on võrdsete vahedega?
  • Dynamic range – määrab spektrogrammi heleduse-tumeduse. Kui salvestuse nivoo on madal või väga tugev või müratase on kõrge, saab selle parameetriga mängides nähtavust parandada.
Kitsaribaline spektrogramm, analüüsiakna pikkus 0,033 sekundit.

Joonis 8.8: Kitsaribaline spektrogramm, analüüsiakna pikkus 0,033 sekundit.

Et näha ühe ajaakna spektrit (kus puudub ajatelg, vertikaalteljel on intensiivsus ja horisontaalteljel sagedus), vali menüüst Spectrogram > View spectral slice. See käsk teeb kursoriga valitud kohast19 Praati objektiaknasse uue objekti. See ei ole nüüd enam Sound objekt vaid Spectrum objekt. Vaata objektiakna dünaamilist menüüd: seal on hoopis teine valik käske (näiteks Play puudub hoopis, sest spektril puudub ajamõõde).

SpectrumEditori aken.

Joonis 8.9: SpectrumEditori aken.

Iga objektitüübi puhul on toimetamisaken (see, mis avaneb käsuga View & Edit) pisut erinev. Spectrum objekti puhul on toimetamisaknas spekter, mille horisontaalteljel on sagedus ja vertikaalteljel intensiivsus, ajatelge ei ole. Spektri tipud peaksid olema samadel sagedustel, kus spektrogramm on kõige tumedam.

Nii nagu Soundeditoris on võimalik valida mingi lõik ajateljel ja ainult seda kuulata, kopeerida ja lõigata, on SpectrumEditoris võimalik valida üks sagedusvahemik ja ainult seda kuulata.

Kuulata saab muidugi juhul, kui tegemist on pikema aja spektriga. Näiteks kogu helifailist saad teha Spectrum objekti objektiaknas. Kõigepealt vali Sound objekt. Nüüd otsi dünaamilisest menüüst nupp Analyse spectrum ja avanenud alamenüüst To spectrum..., dialoogiaknas vajuta OK. Nüüd tekib uus Spectrum objekt. Ava SpectrumEditoris (käsuga View & Edit). Kui nüüd valid mingi lõigu (sagedusteljel), saad kuulata, kuidas kõlab kõne ainult valitud sagedusvahemikus. Menüüst Spectrum leiad käsud Pass band... ja Stop band.... Nende abil saab spektris kas üles- või allapoole jäävaid sagedusi välja filtreerida.

8.2 Spektrianalüüsid Praati objektiaknas

Heli toimetamisakna ehk SoundEditoris spektrogrammi ja formantide vaatamisele on alternatiiv teha analüüsid objektiaknas. Kui SoundEditor teeb analüüse dünaamiliselt ekraanil näha oleva lõigu kohta, siis objektiaknas saab teha kindlate parameetritega analüüsi ühe korraga.

Kumba võimalust eelistada, sõltub sellest, mida vaja on. Kui soovime spektrogrammi, põhitooni vms vaadata, uurida täpselt lühiajalisi muutusi jne, on parem SoundEditor. Kui aga soovime teha jooniseid (millest tuleb juttu ptk 16), uurida pikema helilõigu mingi parameetri keskmist, minimaalset või maksimaalset väärtust, või koguda märgendatud failist andmeid skripti abil (vt ptk 19), on parem kasutada vastavaid objekte.

Kui on valitud objekt Sound, siis dünaamilises menüüs on jaotus Analyse spectrum, kuhu on koondatud spektraalse analüüsi käsud.

8.2.1 Objekt Spectrum

Et spektri puhul puudub ajatelg, siis see käsk teeb kogu Sound objektist spektri. Kui tahame leida ainult ühe hääliku spektrit, mis on pikemas Sound objektis, siis tuleks see sealt välja lõigata, selleks on mitu viisi:

  • SoundEditoris vali kursoriga soovitud lõik ja menüüst Sound > Extract selected Sound. Objektiaknasse tekib uus Sound objekt nimega untitled.
  • Objektiaknas, kui Sound objekt on valitud, dünaamilisest menüüst Convert > Extract part....

Et nüüd soovitud lõigust Spectrum objekt tekitada, vali Sound objekti Analyse spectrum > To spectrum....

Edit avab SpectrumEditori. Saad kuulata, kuidas helilõik kõlab erinevates sageduspiirkondades ja vaadata spektri kuju.

Menüü Query saab teha päringuid, näiteks heli intensiivsust mingis sagedusvahemikus. Spektri analüüsimisel kirjeldatakse nelja spektri momenti spectral moments, mida kasutatakse näiteks konsonantide kirjeldamisel:

  1. moment: gravitatsioonikese näitab, mis on spketri energia keskmine sagedus. Käsk Get centre of gravity....
  2. moment: standardhälve näitab, kui palju spektri sagedusjaotus varieerub keskmise ümber. Käsk Get standard deviation....
  3. moment: asümmeetriakordaja näitab, kui palju gravitatsioonikekmest allapoole jääv spektriosa erineb gravitatsioonikeskmest ülespoole jäävast osast. Käsk Get skewness....
  4. moment: järskuskordaja näitab, kui palju erineb spektri gravitatsioonikeskme ümber jääv energia jaotus normaaljaotusest. Käsk Get kurtosis....

8.2.1.1 Ühe hääliku spekter

Kui tahame ainult ühe lühikese ajavahemiku spektrit, näiteks ühe vokaali uurimiseks, on seda mõistlik teha hoopis nii: Vali Sound objekt, ava SoundEditor, pane kursor ajateljel sinna, kust tahad spektrit ja vali menüüst Spectrogram > View spectral slice. Niimoodi tekib objektiaknasse uus Spectrum objekt ja avaneb selle SpectrumEditor.

8.2.1.2 Ltas

Üks natuke teistsugune spektri variant on Ltas ehk Long-term average spectrum ehk pika aja keskmine spekter (Menüü Analyse spectrum > To Ltas...). Seda kasutatakse näiteks hääle kvaliteedi ja selle individuaalse vareerumise (nt kohtufoneetikas isikutuvastamiseks) ja muusika uurimisel (nt eri laulustiilide kirjeldamiseks). Pika aja keskmiselt spektrilt on võimalik näha, millised sageduspiirkonnad on ühe kõneleja, laulustiili või heliteose puhul enam või vähem kasutatud. Näiteks koolitatud häälega ooperilauljate häälest on leitud sagedusvahemik, mis on valjem kui tavalise hääle puhul, mis on vajalik selleks, et laulja hääl orkestrist üle kostaks.

8.2.2 Objekt Spectrogram

Spektrogrammi saab menüüst Analyse spectrum käsuga To Spectrogram... , mis teeb objekti Spectrogram. Spektrogrammi puhul on oluline jällegi määrata seaded. Spektrogrammi seaded:

  • Window length – analüüsiakna pikkus. 0.005 sekundit annab lairibaspektrogrammi, 0.033 sekundit kitsaribalise spektrogrammi (vt joonis 8.6).
  • Maximum frequency – sagedustelje maksimaalne väärtus. Enamik inimkõne olulisest infost jääb vahemikku 0-5000 Hz, mõne frikatiivi ja klusiili eksplosiooni intensiivsem müra jääb kõrgemasse sageduspiirkonda.
  • Time step ja Frequency step – parameetrid, mida üldjuhul ei ole vaja muuta, aga mille muutmisega saab optimeerida analüüsi kiirust (vaata täpsemalt Praati manuaalist).

Spektrogrammiobjekti analüüsivõimalused ei ole eriti suured. Seetõttu ei ole dünaamiliste menüüde hulgas ka käsku Edit vaid on hoopis View, ei ole käsku Draw vaid on käsk Paint (mis viitab sellele, et spektrogrammi ei joonistata vektorgraafikas vaid pikslitena).

8.2.3 Objekt Formant ja FormantPath

Automaatse formantanalüüsi jaoks on objektiaknas Sound objekti dünaamilises menüüs Analyse spectrum käsk To Formant (burg)..., mis tekitab objektiaknasse Formant objekti.

Meeshääle puhul soovitatakse Maximum formant seada 5000 Hz-le, naishääle puhul 5500 Hz-le. Formantanalüüsi lae väärtusega mängides on võimalik ka eri vokaalide puhul saada täpsem tulemus: tagavokaalidel, millel F1 ja F2 on lähestikku, kipub formantanalüüs standardväärtustega neid kokku üheks formandiks pidama.

Täpsema tulemuse saab, kui formantanalüüsi lage mõnesaja hertsi võrra langetada. Parima tulemuse saamiseks võiks otsida iga kõneleja iga vokaaliklassi jaoks optimaalse formantlae (vt Escudero et al. 2009).

Optimaalse formantlae leidmiseks on võimalus teha korraga mitu analüüsi ja neid SoundEditoris võrrelda (vt põhjalikumat kirjeldust peatükis 9.3.3 ja Weenink (2023)). Selleks on käsk Analyse Spectrum > To FormantPath (burg).... Tavalise formantanalüüsiga võrreldes on seadetes kaks täiendavat lahtrit:

  • Ceiling step size – koefitsient, mille võrra lage muudetakse, nt vaikimisi väärtustega keskmine lagi on 5500 Hz ja samm on 0.05 ehk 5500*0.05 = 275 Hz.
  • Number of steps up/down – mitu sammu üles ja alla liigutakse. Nt kui väärtus on neli, tehakse kokku 9 analüüsi: keskmise formantlaega (mis vaikimisi on 5500 Hz), neli sammu sellest alla (5225, 4950, 4675 ja 4400) ja neli sammu üles (5775, 6050, 6325 ja 6600 Hz).

Kui nüüd valida objektiaknas korraga Sound ja FormantPath (ja TextGrid) objektid ja View & Edit, siis avaneb editor, kus paremal on erinevate lagedega formantanalüüsid ja kui mõne peal klõpsata, siis kuvatakse seda analüüsi spektrogrammi peale. Nii on võimalik välja valida see analüüs, mis kõige paremini sobib mingi kindla vokaali jaoks.

FormantPath koos Sound objektiga.

Joonis 8.10: FormantPath koos Sound objektiga.

FormantPath objekti Query menüüst leiab ka käsu Get optimal ceiling, mis automaatselt pakub optimaalset formantlae väärtust (selle põhjal, kui palju on formantväärtuste varieerumist ajateljel määratud lõigus).

Näiteks joonisel 8.10 on “Põhjatuule ja päikese” salvestuse esimene “tuul”. FormantPath objektil on maksimaalseks formantide arvuks 6, keskmine maksimaalne formant 5000 Hz ja 0.05 sammuga tehti 10 analüüsi keskmisest üles- ja allapoole. Optimaalseks formantlaeks osutus kõige madalam 3033 Hz.

8.2.4 Erinevate analüüsiobjektide salvestamine

Üldjuhul piisab sellest, et Sound objekt on salvestatud, sest kõik objektid on sellest tuletatud. Kui aga on tegemist suurema failiga, võtab sellest analüüside tegemine küllaltki palju aega. Seega, kui tahame vahepeal Praati sulgeda ja kunagi hiljem tööd jätkata või soovime Praatiga tehtud analüüse mõnes teises programmis kasutada (nt Elan, R, Python vms), on vaja objektid salvestada.

Salvestamiseks vali mõni käskudest objektiakna staatilisest menüüst Save. Kõiki objekte saab salvestada kas tekstifailina (Save as text file...) või binaarse failina (Save as binary file...). Kui tahad salvestada selleks, et hiljem Praatis uuesti avada, võib faili salvestada binaarse failina, nii võtab fail peagu 10 korda vähem ruumi kui sama sisuga tekstifail. Kui aga eesmärk on andmeid mõne teise programmiga lugeda, siis tuleks valida tekstifail, sest Praati binaarset faili ei pruugi teised programmid lahti kodeerida. Tekstifaili sisu on korrastatud teksti kujul ja on ka tekstiredaktoris (nt Notepad++) loetav.

Kui oled ühest Sound objektist teinud mitu muud objekti, mida tahad teine kord jälle kasutada, võid salvestada ka mitu objekti üheks failiks. Selleks vali kõik objektid (klõpsa esimese peal hiirega ja vasakut nuppu all hoides vea hiirega neist kõigist üle; või siis vali nad ükshaaval hiirega peale klõpsates, kui hoiad samal ajal all Ctrl-klahvi) ning vali menüüst Save käsk Save as binary file.... Salvestades lisab Praat failile laiendi .Collection. Uuesti avades (menüüst Open käsuga Read from file...) on jälle mitu objekti objektiaknas.

Kirjandus

Eek, Arvo & Einar Meister. 1998. Quality of standard Estonian vowels in stressed and unstressed syllables of the feet in three distinctive quantity degrees. Linguistica Uralica 34(3). 226–233. https://doi.org/10.3176/lu.1998.3.11.
Escudero, Paola, Paul Boersma, Andréia Schurt Rauber & Ricardo A. H. Bion. 2009. A Cross-Dialect Acoustic Description of Vowels: Brazilian and European Portuguese. The Journal of the Acoustical Society of America 126(3). 1379–1393. https://doi.org/10.1121/1.3180321.
Weenink, David. 2023. Improved Formant Frequency Measurements in Praat. Radek Skarnitzl & Jan Volín (toim), Proceedings of the 20th International Congress of Phonetic Sciences, 704–707. Prague: Guarant International. https://www.internationalphoneticassociation.org/icphs-proceedings/ICPhS2023/full_papers/463.pdf.

  1. Teine viis nummerdamiseks on mitte eristada põhitooni ja ülemhelisid vaid tähistada kõik osahelid alustades ühest. Selline tähistus sobib paremini juhul, kui tegemist on ebaharmoonilise spektriga helidega, nt kirikukella heli.↩︎

  2. Kui heli väljub suu kaudu, siis kõrgemad helid kiirguvad suu avast efektiivsemini kui madalad, mistõttu suu kaudu väljuvas helis on osahelide intensiivsus umbes -6dB oktavi kohta.↩︎

  3. Kenasti näeme me seda tavalise kõnehääle puhul, sest formantide piirkonda jääb osahelisid, mis võimenduvad. Kui aga põhitooni sagedus on väga kõrge (nt sopran laulmas kõrgeid noote), siis spektri osahelid on üksteisest kaugel ja vokaaltrakti resonantssagedused ei pruugi spektris ilmuda, sest ühtegi osaheli nende läheduses pole. (Jaan Rossi märkus.)↩︎

  4. Joonisel on kujutatud sünteesitud vokaali, mistõttu hääl on vaadeldavas viiesekundilises lõigus ebaloomulikult stabiilne.↩︎

  5. Kui kursor on paigutatud ühele ajahetkele, siis spektrilõik tehakse lühikese ajaaknaga lõigust kursori asukoha ümbruses; kui valid kursoriga ise lõigu, siis spektrilõigu pikkuseks on kursoriga valitud ala.↩︎