LARI KUMPU ADPCM:N KÄYTTÖ ÄÄNEN HÄVIÖTTÖMÄSSÄ PAKKAUKSESSA

Koko: px
Aloita esitys sivulta:

Download "LARI KUMPU ADPCM:N KÄYTTÖ ÄÄNEN HÄVIÖTTÖMÄSSÄ PAKKAUKSESSA"

Transkriptio

1 LARI KUMPU ADPCM:N KÄYTTÖ ÄÄNEN HÄVIÖTTÖMÄSSÄ PAKKAUKSESSA Kandidaatintyö Tarkastaja: lehtori Konsta Koppinen Työ jätetty tarkastettavaksi 19. joulukuuta 2010

2 ii TIIVISTELMÄ TAMPEREEN TEKNILLINEN YLIOPISTO Tietotekniikan koulutusohjelma KUMPU, LARI: ADPCM:n käyttö äänen häviöttömässä pakkauksessa Kandidaatintyö, 20 sivua, 5 liitesivua Joulukuu 2010 Pääaine: Signaalinkäsittely ja multimedia Tarkastaja: lehtori Konsta Koppinen Avainsanat: PCM, DPCM, ADPCM, Äänen häviötön pakkaus, äänen häviöllinen pakkaus, MP3, FLAC, G.726 Äänisignaalin digitalisoimisesta lähtien on kehitetty menetelmiä parantaa signaalien laatua tai saada ne pakattua pienempään tilaan. Perinteiset pakkausmenetelmät eivät toimi puhe- tai musiikkisignaaleille niiden nopeiden amplitudimuutosten takia, jonka vuoksi niille on kehitetty omia pakkausalgoritmeja. Tämä työ selvittää audiokoodauksen taustoja, jotka ovat mahdollistaneet häviölliset ja häviöttömät pakkausalgoritmit, sekä käy perusperiaatteet läpi näistä pakkausmetodeista. Lisäksi lopussa esitellään G.726 puhekoodekin toiminta ja sen omakohtainen toteutus Matlab-ohjelmistolla.

3 iii ALKUSANAT Tämä työ on tehty Tampereen teknillisen yliopiston signaalinkäsittelyn laitoksen kandidaatintyöseminaaria varten syksyllä Suuret kiitokset ohjaajalleni Konsta Koppiselle, joka oli suurena apuna läpi seminaarin. 19. joulukuuta 2010

4 iv SISÄLLYS Termit ja niiden määritelmät... v 1 Johdanto Audiosignaalin koodaaminen Koodaamisen historiaa PCM DPCM Avoin DPCM-koodekki Suljettu DPCM-koodekki ADPCM Äänen pakkaaminen Häviöllinen pakkaus ja MP3-formaatti Häviötön pakkaus ja FLAC-formaatti G ADPCM-koodekin toteutus Matlabilla Tulokset ja johtopäätökset Lähteet Liite 1: Matlab-koodi... 21

5 v TERMIT JA NIIDEN MÄÄRITELMÄT PCM kvantisointi koodekki enkooderi dekooderi Pulssikoodimodulaatio, menetelmä jolla analoginen signaali muunnetaan digitaaliseksi. Jatkuva-aikaisen signaalin muuntaminen diskreettiin tasoon vastaamaan tiettyä tasoa, tietyllä ajanhetkellä. Ohjelmisto, joka mahdollistaa tiedostojen muuntamisen tiettyyn formaattiin tai niiden toiston tietokoneella. Koodekin osa, jolla muunnetaan tiedosto tai signaali formaatista toiseen. Koodekin osa, jolla puretaan enkooderilla saatu tiedosto toistettavaan muotoon.

6 1 1 JOHDANTO Äänidatan ja datan pakkaamisessa yleensäkin, on tarkoituksena saada haluttu tiedosto pienempään tilaan ilman, että siitä häviää oleellista informaatiota. Pakkaamiseen käytetyt algoritmit jaetaan kahteen luokkaan; häviöttömät ja häviölliset. Häviöllisillä algoritmeilla pakkaussuhde on huomattavasti suurempi ja ne ovat yleensä laskennallisesti kevyempiä toteuttaa, joten niitä käytetään usein kaupallisissa tuotteissa. Häviöttömillä algoritmeilla pakkaussuhde on pienempi, mutta pakattu signaali on laadultaan korkeampi, lähes identtinen alkuperäisen suhteen. Häviöttömät ja häviölliset koodekit muodostuvat enkooderista ja dekooderista. Enkooderista saatu signaali pakataan lyhyempään esitysmuotoon ja lähetetään dekooderille joka osaa esittää pakatun signaalin alkuperäistä vastaavana. Työssäni perehdyn tarkemmin jo digitaalisessa muodossa oleviin audiosignaaleihin, niiden koodaukseen ja pakkaamiseen. Käyn läpi kolme eri tapaa jolla äänisignaalin voidaan koodata, äänen häviöllisen ja häviöttömän pakkauksen ja lopuksi otan katsauksen standardisoituun G.726 koodekkiin, jota käytetään muun muassa kansainvälisten puheluiden siirtoon. Lisäksi toteutan itse ADPCM-koodekin Matlab-ohjelmistolla, sekä vertailen sen toimintaa puhe- ja musiikkitiedostoilla.

7 2 2 AUDIOSIGNAALIN KOODAAMINEN Tässä luvussa käydään läpi audiosignaalin koodaamisen historiaa ja kolme menetelmää, jolla audiosignaali voidaan koodata. 2.1 Koodaamisen historiaa Ensimmäiset digitaaliset ääninauhoitteet ovat peräisin 70-luvulta ja ne nauhoitti Thomas Stockham itse kehittämällään laitteella, josta tuli ensimmäinen laite, jota oli saatavilla kaupallisilla markkinoilla. Tämä ei olisi ollut kuitenkaan mahdollista ilman brittiläisen tiedemiehen Alec Reevesin patenttia, jossa kuvattiin PCM:n eli pulssikoodimodulaation teoria vuonna 1937 [1]. Vaikkakin toinen tiedemies, Paul M. Rainey oli jo ideoinut PCM:n toteutuksen jo muutamaa vuotta aiemmin. [2] 2.2 PCM Pulssikoodimodulaatio on menetelmä, jolla analoginen signaali muutetaan digitaaliseksi signaaliksi. PCM:ssä signaali näytteistetään tietyn ajan välein ja näytteet kvantisoidaan vastaamaan tiettyä tasoa. Alun perin PCM:ää käytettiin digitaalisissa puhelinverkoissa, mutta nykyään se on myös käytössä ammattilaisten äänenkäsittelyjärjestelmissä. Digitaaliseen puhelinverkkoon PCM-koodaus on standardisoitu G.711 koodekkiin, josta on kaksi eri variaatiota, jotka kuitenkin eroavat toisistaan vain hieman. Ero johtuu eri puolella maailmaa käytettävästä linjakoodauksesta. Pohjois-Amerikassa ja Japanissa käytetään µ-law koodausta, kun taas Euroopassa ja suurimmassa osasta muuta maailmaa käytetään A-law koodausta. Ensimmäinen PCM-koodausta käyttänyt digitaalinen puhesignaalin lähetys tapahtui liittoutuneiden toimesta toisen maailmansodan aikaan. PCM:n tietovirrassa on kaksi perustavaa attribuuttia, jotka määräävät muutetun signaalin laadun. Näytteistystaajuus määrittää kuinka monta kertaa sekunnissa otetaan alkuperäisestä signaalista näyte ja bittisyvyys joka määrittää kuinka monta kvantisointitasoa on käytettävissä. Mitä suurempi näytteistystaajuus ja pienempi bittisyvyys, sitä huonompi on PCM:n muodostaman signaalin laatu.

8 3 Kuva 1 Sinisignaali ja sen diskreetti esitys PCM:llä [3] Kuvassa sinisignaali on punaisella ja harmaa alue on 4-bittisellä PCM-muunnoksella saatu diskreetti esitys. PCM:n tasavälinen näytteistys näkyy kuvan alalaidassa olevilla pystyviivoilla ja 4-bittinen kvantisointi y-akselin arvoina Lisäksi kuvan signaalia kvantisoidessa on käytetty lattiafunktiota, joka pyöristää tuloksen signaalia kvantisoidessa aina alaspäin. [3] Signaalia kvantisoidessa siihen muodostuu kvantisointivirhettä. Alkuperäinen signaali voidaan esittää kaavalla s o (n) = s(n) + q(n). (2.2), jossa s o (n) on alkuperäinen signaali, s(n) kvantisoitu signaali ja q(n) on kvantisointivirhe. Kvantisointivirhe on erotus todellisen analogisen arvon ja lähimpään kvantisoituun tasoon pyöristetyn arvon välillä. Jos signaalin dynamiikan voidaan ajatella olevan välillä [-1 1], kvantisointikohinaa voidaan mallintaa tasajakautuneesti kaavalla e q (ε) = 1/Δ, - Δ/2 ε Δ/2. (2.3), missä Δ on eli kvantisointiaskel ja R on kvantisointiin käytettävien bittien määrä. Kuitenkin parempi tapa kuvata PCM-muunnoksen laatua on laskea hyötysignaalin ja kohinan tehojen suhde eli signaali/kohinasuhde. SNR eli signal-to-noise ratio lasketaan kaavalla SNR = 10 log 10 S/E. (2.4)

9 4, jossa S on hyötysignaalin keskimääräinen teho ja E kohinan keskimääräinen teho. Tuloksena saatu luku esitetään desibeleissä. SNR:n ollessa logaritminen hyötysignaalin kasvaessa kymmenkertaiseksi, SNR kasvaa kymmenellä [4]. Mitä suurempi SNR, sen parempi on muunnoksen laatu. PCM-muunnosta on kehitetty vuosien mittaan ja muutama menetelmä tullaan esittämään seuraavissa kappaleissa. 2.3 DPCM Differentiaalinen pulssikoodimodulaatio eli DPCM kehitettiin PCM:n pohjalta C. Cutlerin toimesta vuonna DPCM-koodekki käyttää perustana PCM-koodekkia, mutta siihen on lisätty toiminnallisuuksia, jotka parantavat koodekin suorituskykyä ja pienentävät muutetun signaalin siirtokaistan suuruutta. [5] Toisin kuten PCM:ssä, jossa kvantisoidut näytteet lähetetään vastaanottimeen, DPCM:ssä lasketaan kvantisoitujen näytteiden erotukset ja ne lähetetään eteenpäin vastaanottimeen. Tämä pienentää kvantisointiin tarvittavien bittien määrää ja sitä kautta signaalin lähettämiseen vaadittavaa siirtokaistaa sillä oletuksella, että erotukset ovat keskimääräisesti pienempiä kuin näytteet, josta erotukset lasketaan. DPCM-koodekki voidaan toteuttaa kahdella eri tavalla; avoimessa järjestelmässä näytteestä ja sitä edeltävästä näytteestä lasketaan erotus, joka kvantisoidaan ja lähetetään vastaanottimeen. Tämä toteutus voi aiheuttaa vastaanottimessa kvantisointikohinan summautumisen ja sen kasvun mielivaltaisen suureksi. Suljetussa järjestelmässä käytetään synteesi-analyysi-menetelmää, jossa kvantisointi tehdään dekoodatulle signaalille. Kooderissa valitaan kvantisoitu näyte siten, että dekoodattu signaali olisi mahdollisimman hyvä. [4] Avoin DPCM-koodekki Lasketaan kvantisoitava näyte kaavalla e[n] = x[n] x[n-1]. (2.5), jossa x[n] on viimeksi sisääntullut näyte ja x[n-1] on sitä edeltävä näyte. e q [n] on tämän erotuksen kvantisoitu näyte. Kuva 2 Avoimen DPCM-koodekin kooderin lohkokaavio Dekooderissa alkuperäinen näyte saadaan rakennettua, kun vastaanotetulle näytteelle tehdään päinvastainen toimenpide kuin kooderissa. Tähän pätee kaava [n] = e q [n] + [n-1]. (2.6), jossa [n] on dekoodattu näyte, [n-1] sitä edeltävä dekoodattu näyte ja e q [n] juuri laskettu kvantisoitu näyte.

10 5 Kuva 3 Avoimen DPCM-koodekin dekooderin lohkokaavio Kuten lohkokaaviosta näkee, edellinen dekoodattu näyte lisätään kvantisoituun näytteeseen, koska kvantisoitu näyte ja dekoodattu näyte sisältävät kvantisointikohinaa voi tämä johtaa kvantisointikohinan rajuun nousuun tulevilla näytteillä, jolloin koko signaali saattaa muuttua aivan liian kohinaiseksi. Suljetulla DPCM-koodekilla ei kuitenkaan tätä vaaraa ole. [5] Suljettu DPCM-koodekki Suljetussa DPCM-koodekissa kohinan summautuminen estetään kvantisoimalla erotus nykyisen näytteen ja edellisen dekoodatun näytteen välillä, sen sijaan että se erotus laskettaisiin nykyisen ja edellisen näytteen välillä. Tämä tapahtuu kaavalla d[n] = x[n] [n-1]. (2.7), jossa x[n] on viimeksi saatu näyte, [n-1] on edellinen dekoodattu näyte. Tämä kuitenkin tarkoittaa sitä, että kooderissa täytyy laskea kvantisoitu näyte jota pyritään kuitenkin välttämään, koska näyte on yleensä isompi kuin kahden näytteen erotus. Kuva 4 Suljetun DPCM-koodekin enkooderin lohkokaavio Kvantisoitu erotus lähetetään edelleen dekooderille, jossa siihen lisätään edellinen kvantisoitu näyte, jotta alkuperäinen signaali saadaan muodostettua. Kuva 5 Suljetun DPCM-koodekin dekooderin lohkokaavio

11 6 Vaikkakin DPCM-koodaus mahdollisti signaalin koodaamisen pienemmällä bittimäärällä verrattuna PCM-koodaukseen, parannusta saatiin ottamalla käyttöön ADPCMkoodaus. 2.4 ADPCM ADPCM-koodaus kehitettiin 70-luvun alussa Bell Labs organisaation toimesta puheen koodausta varten [7]. Adaptiivinen differentiaalinen pulssikoodimodulaatio eroaa aiemmin esitellyistä pulssikoodimodulaatioista siten, että siinä pyritään ennustamaan tulevia näytteitä signaalista ja tätä kautta muokkaamaan ennustajan parametreja. Adaptiivinen ennustaja mahdollistaa pienemmän bittimäärän käytön signaalia kvantisoidessa. ADPCM-koodekki pystyy käyttämään 31, 15, seitsemää tai neljää eri tasoa kvantisoidessaan erotussignaalia. Tämä vastaavasti tarkoittaa, että kvantisoinnissa käytetään viittä, neljää, kolmea tai kahta bittiä. Jos ennustajan antama ennustus signaalista tai pikemminkin nykyisestä näytteestä signaalia on tarkka, ennustetun näytteen ja todellisen näytteen erotuksella on pienempi varianssi kuin todellisella näytteellä. Tällöin erotus voidaan kvantisoida pienemmällä määrällä bittejä kuin mitä vaatisi kvantisoida todellinen näyte. Vastaanottimessa kvantisoitu erotussignaali lisätään ennustettuun näytteeseen, jolloin saadaan rekonstruktuoitu signaali. [8] Ennustajan kertoimet täytyy tietää vastaanottimessa, jotta signaali voidaan muodostaa uudelleen. Kertoimet voidaan laskea, joko suoraan alkuperäisestä signaalista jolloin ne pitää lähettää sivuinformaationa vastaanottimeen. Tätä menetelmää kutsutaan eteenpäin-adaptoinniksi. Kertoimet voidaan myös laskea vasta vastaanottimessa jo syntetisoidusta signaalista, jolloin kyseessä on taaksepäin-adaptointi. [4, s. 13] Puheenkoodauksessa signaali voidaan jakaa kahteen eri lohkoon taajuuksien mukaan käyttämällä QMF-suodinta ennen ADPCM-muunnosta. Lohko, joka sisältää puheessa olevat taajuudet voidaan koodata suuremmalla bittimäärällä ja käyttää pienempää bittimäärää toiseen lohkoon. [7]

12 7 3 ÄÄNEN PAKKAAMINEN Tässä luvussa esittelen äänen häviöllisen ja häviöttömän pakkauksen menetelmiä ja eroja. Esittelen tarkemmin häviöllisistä pakkauksista MP3-formaatin ja häviöttömistä pakkauksista FLAC-formaatin. 3.1 Häviöllinen pakkaus ja MP3-formaatti Häviöllisessä pakkauksessa on tavoitteena saada pakattu signaali alkuperäistä pienempään tilaan, sen kuitenkaan menettämättä laatua huomattavasti. Tavalliset pakkausalgoritmit eivät toimi hyvin äänitiedostoille, jonka takia niitä varten on kehitetty omia algoritmeja. Sekä häviöttömät ja häviölliset pakkausalgoritmit käyttävät tiedon redundanssin poistoa hyväkseen pienentääkseen pakatun tiedoston kokoa. [9] Ihmisen kuuloaistin pohjalta luodut psykoakustiset mallit ovat edesauttaneet häviöllisten pakkausalgoritmien kehitystä ja tehokkuutta. Psykoakustiset mallit kuvaavat ihmisen kuuloaistin kykyä kuulla eri taajuuksia, sekä käyttäytymistä kovien äänien tapahtuessa. Ihminen pystyy tyypillisesti kuulemaan taajuuksia 20 Hz ja 20 KHz välillä, jonka takia audiosignaalia pakatessa näitä suuremmat ja pienemmät taajuudet voidaan jättää koodaamatta kokonaan. [10] Kuva 6 Ihmisen kuulokäyrä [10]

13 Ihmisen kuulo on herkin taajuuksille, jotka ovat 2000 Hz ja 4000 Hz välissä. Äänen pakkaamisessa tämä tarkoittaa sitä, että sellaiset taajuudet voidaan koodata pienemmällä bittimäärällä. Yleisesti ottaen, mitä korkeammalla käyrä on kyseisen taajuuden kohdalla, sitä enemmän on käytettävä bittejä signaalin koodaamiseen, jotta äänenlaatu ei huomattavasti laskisi. Toinen psykoakustiikan avulla huomattu ilmiö on peittoilmiö. Peittoilmiö tarkoittaa sitä, että jokin tietyn taajuuksinen ääni voi peittyä osaksi tai jopa kokonaan toisen kovemman äänen alle, mikäli äänten taajuusero on riittävän pieni. Äänen pakkaamisessa tämä tarkoittaa sitä, että tietyllä ajanhetkellä olevan tietyn taajuuksinen kovaäänisen impulssin lähellä olevat taajuudet voidaan koodata pienemmällä bittimäärällä. [11, s. 82] Vuonna 1993 julkaistu MP3-formaatti on varmasti kaikkein tutuin häviöttömän pakkauksen tiedostoformaatti. Internetin yleistyttyä 90-luvun puolivälin jälkeen MP3- tiedostojen määrä alkoi kasvaa nettisivujen ja vertaisverkkojen kautta. MP3-formaatti mahdollisti CD-laatuisten äänitiedostojen pakkaamisen 11 kertaa pienempään tilaan 128 kbit/s bittinopeudella. [12] MP3 tulee sanoista MPEG-1 Layer 3 ja formaatin kehitys alkoi Motion Picture Experts Groupin toimesta. Varsinaisen formaatin tekivät kuitenkin MPEG:n äänitiedostoihin perehtynyt aliryhmä, jossa oli useita insinöörejä eri instituuteista [13]. Ensimmäinen vedos formaattiin liittyen tehtiin vuonna 1991, se viimeisteltiin vuonna 1992 ja julkaistiin vuonna [12] Vaikka standardi ei tarkkaan kerro miten MP3:n enkoodaus tapahtuu, se antaa esimerkkejä miten se on tehty, joka on mahdollistanut useiden enkoodereiden ilmestymisen. Enkoodereiden valinta tuleekin päättää tapauskohtaisesti. Sen sijaan dekooderit ovat tarkkaan määriteltyjä standardissa, eri dekoodereiden ulostulojen pitää olla samoja tietyllä pyöristystarkkuudella. Dekoodereiden vertailu tapahtuukin niiden laskenta-ajan perusteella. [12] MP3-tiedostot voidaan luoda useilla eri bittinopeuksilla ja näytteistystaajuuksilla, jotka on esitelty taulukoissa 1 ja 2. 8

14 9 Taulukko 1 MP3-formaatin tuetut bittinopeudet (kbit/s) eri standardien mukaan MPEG-1 MPEG Taulukko 2 MP3-formaatin tuetut näytteistystaajuudet (Hz) eri standardien mukaan MPEG-1 MPEG Yleisimmin käytetty näytteistystaajuus MP3-tiedostoa luotaessa on Hz, koska se on sama näytteistystaajuus kuin CD:llä olevissa äänitiedostoissa. Lisäksi huomioitakoon bittinopeudet 128 kbit/s, 160 kbit/s ja 192kbit/s, koska niillä luodut MP3-tiedostot ovat pakkaussuhteiltaan suurin piirtein 11:1, 9:1 ja 7:1 verrattuna CD:llä olevien pakkaamattomien äänitiedostojen bittinopeuksiin. Joillakin enkoodereilla päästään jopa 640 kbit/s bittinopeuksiin, mutta standardin mukaan dekoodereiden täytyy pystyä purkamaan maksimissaan 320 kbit/s bittinopeuksilla tehdyt MP3-tiedostot. [12] Eri bittinopeuksien lisäksi MP3-tiedosto voidaan enkoodata kahdella eri tavalla. Voidaan käyttää joko samaa bittinopeutta läpi tiedoston, jolloin enkoodauksesta tulee nopeampaa ja helpompaa toteuttaa. Toinen tapa on käyttää vaihtelevaa bittinopeutta. Enkooderit, jotka käyttävät hyväkseen psykoakustisia malleja enkoodaavat äänitiedostot usein vaihtelevalla bittinopeudella. [12]

15 Häviötön pakkaus ja FLAC-formaatti Häviötön pakkaaminen tapahtuu yksinkertaistettuna kolmessa vaiheessa. Ensimmäisessä vaiheessa signaali, oli se sitten musiikkitiedosto tai puhesignaali, pilkotaan tasapituisiin lohkoihin, koska tällöin laskentatehovaatimukset pienenevät ja signaalin käsittelystä tulee nopeampaa. Jokaiseen lohkoon lisätään otsikkotiedot, joka sisältää pakkausalgoritmien parametrit, jotka muuttuvat signaalin muuttuessa. Lisäksi otsikkotietoihin voidaan lisätä tietoa lohkojen välisistä synkronoinneista ja multimediassa esim. kappaleen esittäjän tiedot. [14] Toisessa vaiheessa etsitään redundanssia näytteiden välillä lohkon sisällä. Häviöttömät pakkausalgoritmit käsittelevät stereosignaalien kanavat erillään toisistaan. Lähes kaikki häviöttömät koodekit käyttävät jonkinlaista lineaarista ennustusmallia etsiäkseen redundanssia. Lohkon näytteitä pyritään ennustamaan ja niitä verrataan alkuperäiseen signaaliin. Näiden erotuksena saadaan ennustusvirhe, joka yhdistettynä ennustajan parametreihin häviöttömästi pakattuna muodostavan lohkon signaalin. Ennustajan parametrit valitaan yleensä siten, että residuaalisignaalin keskineliövirhe olisi mahdollisimman pieni. Jotta vaadittava laskentateho ei kasvaisi liian suureksi, ennustajan kertoimet valitaan yleensä valmiista kirjastosta. Toinen tapa on käyttää alhaisella bittimäärällä tai häviöllisesti pakatun signaalin ja alkuperäisen signaalin erotusta, joka pakataan häviöttömästi, joka ei välttämättä johda hyviin lopputuloksiin. [14] Kolmannessa vaiheessa residuaalisignaaliin käytetään jotain entropiakoodausta, jolla pyritään poistamaan redundanssia entisestään. Häviöttömät koodekit käyttävät yleensä Huffman-koodausta, jakson pituuden mukaan tapahtuvaa koodausta tai Ricekoodausta [14]. Muitakin häviöttömiä pakkausalgoritmeja on olemassa ja monesti koodekit käyttävät useita häviöttömiä algoritmeja. Huffman-koodauksessa pakattava tieto esitetään symboleina ja niille muodostetaan kooditaulukko symbolien esiintymistiheyden mukaan. Mitä useammin symboli esiintyy datassa, sitä lyhyempi koodi [15]. Jakson pituuden mukaan tapahtuvassa koodauksessa datasta etsitään pitkiä sekvenssejä, jolloin siinä ei tapahdu muutoksia. Tämän perusteella muodostetaan koodi. Vaikkakin tämä algoritmi on käytössä usein tekstin tai kuvien pakkaamisessa, soveltuu se osin äänen pakkaamiseen esim. musiikkitiedostojen hiljaiset osuudet. Rice-koodaus toimii vähän samalla lailla, kuin Huffman-koodaus. Symboleille annetaan koodi esiintymistiheyden mukaan, mutta Rice-koodauksessa käytetään sitä tietoa hyväksi, että residuaalisignaali noudattaa monesti Laplacen tiheysjakamaa. Koodi muodostetaan residuaalisignaalin etumerkin, signaalin binääriesityksen vähiten merkitsevien bittien ja perättäisten nollien perusteella. [14] Koodien muodostuksen jälkeen lohko on valmis lähetettäväksi dekooderille, jossa lohko puretaan ja yhdistetään muihin lohkoihin ja täten muodostaen häviöttömästi pakatun, alkuperäistä vastaavan signaalin. FLAC:in eli Free Lossless Audio Codecin kehitys alkoi vuonna 2000 ja ensimmäinen versio siitä julkaistiin vuonna Se on häviötön audiokoodekki, jolla pystyy

16 pakkaamaan alkuperäisen signaalin jopa puoleen alkuperäisestä. FLAC käyttää useita eri häviöttömiä pakkausalgoritmeja muun muassa lineaarista ennustavaa koodausta ja Rice koodausta.[16] FLAC-tiedostoa luotaessa signaali jaetaan lohkoihin, jotka kaikki enkoodataan erikseen. Lohkon koko on tärkeä parametri pakkauksessa. Lohkon ollessa liian pieni, enkooderi laskee pakkaussuhdetta epäoptimaalisesti. Jos se on liian suuri, enkooderi ei osaa generoida tehokasta mallia lohkolle. FLAC-enkooderi voi myös käyttää hyväkseen kanavien välistä korrelaatiota parantaakseen pakkaussuhdetta, tämä toimii hyvin varsinkin tavallisille CD:n äänitiedostoille. [16] Lohkoihin jaon jälkeen enkooderi pyrkii ennustamaan signaalia, jotta voitaisiin laskea residuaalisignaali eli ennustetun signaalin ja todellisen signaalin erotus. Tämä siksi, että residuaalisignaalin enkoodaaminen vaatii vähemmän bittejä näytettä kohden kuin pelkän signaalin enkoodaaminen. Ennustaminen voi tapahtua kahdella eri tavalla. Enkooderi voi yrittää sovittaa polynomifunktiota signaaliin tai käyttää LPC-algoritmia eli lineaarista ennustavaa koodausta. Polynomifunktion sovittaminen on nopeampaa joskin epätarkempaa kuin LPC:n käyttö. [16] Residuaalisignaalin laskemisen jälkeen siihen käytetään Rice-koodausta, jolla etsitään optimaalinen parametri, joka noudattaa signaalin jakaumaa. Residuaalisignaali yleensä ottaen noudattaa Laplacen tiheysjakamaa ja Rice-koodaus on nopea ja tehokas tapa laskea jakauman parametri. Jakauman muuttuessa FLAC-enkooderi osaa aina laskea uuden optimaalisen parametrin. Dekooderiin lähetetään varsinaisen pakatun kehyksen lisäksi tiedot pakatun kehyksen tiedoista ja virheentarkistuskoodin. [16] FLAC-formaatti tukee näytteistystaajuuksia välillä 1 Hz Hz, jopa kahdeksaa äänikanavaa ja se käyttää 4-32 bittiä näytettä kohden[14]. Vaikkakin MP3- formaatilla on suuri tuki ohjelmisto- ja laitteistopuolella, on FLAC-formaatti kasvattamassa suosiotaan tallennuskapasiteetin noustessa ja laajakaistanopeuksien noustessa. 11

17 12 4 G.726 G.726-koodekki on vuonna 1990 standardisoitu puheenkoodauksessa käytetty koodekki, joka käyttää ADPCM:ää pakatakseen signaalin. G.726-koodekki on päivitetty versio vuonna 1984 standardisoidusta G.721-koodekista. Koodekki tekee muunnoksen 64 kbit/s A-law tai µ-law linjakoodatusta PCM-signaalista 16, 24, 32 tai 40 kbit/s signaaliksi. Yleisimmin käytetty bittinopeus on 32 kbit/s, koska se tuplaa tiedonsiirtokapasiteetin verrattuna G.711-koodekkiin ja silti se käyttää vain puolet siitä bittinopeudesta mitä G.711-koodekki käyttäisi. 32 kbit/s bittinopeutta käytetään kansainvälisissä puhelinverkoissa, bittinopeuksia 16 ja 24 kbit/s käytetään ylikuormittamaan DCME:tä käyttävissä laitteissa ja 40 kbit/s bittinopeutta käytetään modeemien tiedonsiirrossa. [17] Enkooderin ja dekooderin ADPCM-toiminta on esitetty luvussa 2.4. Lisäksi ennen kvantisointia, residuaalisignaalista otetaan kaksikantainen logaritmi ja siitä vähennetään jokaiselle näytteelle erikseen laskettava skaalauskerroin. Skaalauskerrointa muokataan summaamalla jokaiselle näytteelle laskettava nopean ja hitaan muutoksen muuttuja. G.726-koodekki käyttää signaalin ennustamiseen kahta suodatinta; yhtä toisen asteen suodinta ja yhtä kuudennen asteen suodinta. Kummankin suotimen kertoimia päivitetään yksinkertaistetulla gradienttialgoritmilla. Estimaatti saadaan laskemalla tulo toisen asteen suotimen kertoimien ja edellisen uudelleenmuodostettujen näytteiden kanssa ja lisäämällä tähän summa kuudennen asteen suotimen ja kvantisoidun näytteen tulosta kaavalla, missä. (4.1). (4.2) Kaavoissa a i :ssa on toisen asteen suotimen kertoimet, b i :ssa on kuudennen asteen suotimen kertoimet, d q on kvantisoitu näyte ja s r on aikaisemmilla kierroksilla uudelleen muodostettu näyte. Lopullinen näyte saadaan muodostettua summaamalla estimaatti ja kvantisoitu näyte kaavalla. (4.3)

18 13 5 ADPCM-KOODEKIN TOTEUTUS MATLABIL- LA Tässä luvussa esittelen tärkeimmät koodipätkät mitä tulee ADPCM-koodekin toteutukseen. Koodekki on koodattu mukaillen G.726-standardia ottaen kriittisimmät toteutukseen vaadittavat osat. Koko koodia en tässä luvussa esittele, mutta se löytyy liitteestä A. Ohjelma on toteutettu funktiona ja se käy signaalin läpi silmukassa näyte näytteeltä. Funktio ottaa käynnistysparametreiksi wav-muotoisen tiedoston joka pakataan, bittimäärän jota käytetään uudelleenmuodostetun signaalin luomiseen ja uudelleenmuodostettavan tiedoston nimen. Aluksi lasketaan estimaatti uudelle näytteelle suodinkertoimien, edellisten uudelleenmuodostettujen arvojen ja kvantisoitujen erotusten perusteella standardin määrittelemän 2-9 mukaan se(k) = 0; for i = 1:2, if ( k-i > 0) se(k) = se(k) + a_prev(i)*sr(k-i); sez(k) = 0; for i = 1:6, if ( k-i > 0) sez(k) = sez(k)+b_prev(i)*dq(k-i); se(k) = se(k) + sez(k); Algoritmi 1 Signaalin estimaatin laskeminen Muuttujaan se muodostetaan estimaatti signaalista, muuttujissa a_prev ja b_prev on suotimien kertoimet edelliseltä kierrokselta, muuttujassa sr ovat uudelleenmuodostetun signaalin arvot, muuttujaan sez lasketaan summa toisen suotimen kertoimien ja kvantisoitujen erotusten tulosta ja muuttujassa dq ovat kvantisoitujen erotusten arvot. Tämä saatu arvo vähennetään signaalin nykyisestä arvosta, josta saatu erotus muutetaan logaritmiselle asteikolle ja skaalataan skaalauskertoimella dkk = log2(abs(dk(k)))-y; Erotus kvantisoidaan tiettyyn tasoon riippuen erotuksen arvosta. Arvovälit on määritelty standardissa. Kvantisoinnin jälkeen muuttuja muutetaan takasin lineaariselle asteikolle.

19 14 Skaalauskerroin on merkittävä tekijä signaalia kvantisoidessa ja se muodostetaan kahden eri skaalausmuuttujan avulla. Nopea skaalausmuuttuja lasketaan standardin kaavan 2-2 mukaan yu = (1-(2^-5))*y+(2^-5)*W(I+1); Muuttuja y on skaalauskerroin, muuttuja W on taulukko nopean skaalauskertoimen laskentaan ja muuttuja I on kvantisointitason indeksi. Lyhyt skaalausmuuttuja määritellään standardin kaavan 2-3 mukaan yl = (1-(2^-6))*yl_prev+(2^-6)*yu; Muuttuja yl_prev on edellisellä kierroksella määritelty hidas skaalausmuuttuja ja yu on aikaisemmin määritelty nopea skaalausmuuttuja. Lopullinen skaalauskerroin saadaan laskemalla lyhyen ja nopean skaalausmuuttujan edellisen kierroksen arvot yhteen. Lisäksi laskennassa käytetään muuttujaa al, jonka tarkempaa toteutusta en käy tässä läpi. Muuttujasta al mainittakoon, että sen laskemiseen tarvitaan skaalaustason lyhyen ja pitkän ajan magnitudin keskiarvoa. y = al*yu_prev+(1-al)*yl_prev; Lopullinen uudelleen muodostettu signaalin arvo saadaan laskemalla estimaatti ja kvantisoitu erotus yhteen. sr(k) = se(k)+dq(k); Silmukan jokaisen kierroksen lopussa päivitetään suotimien kertoimet. Toisen asteen suotimen kertoimet päivitetään standardin kaavojen 2-10 ja 2-11 perusteella if ( k > 1) a(1) = (1-(2^-8))*a_prev(1)+(3*(2^-8))*(2*(p(k)>=0)-1)*(2*(p(k- 1)>=0)-1); else a(1) = (1-(2^-8))*a_prev(1); if ( k > 2) a(2) = (1-(2^-7))*a_prev(2)+(2^-7)*((2*(p(k)>=0)-1)*(2*(p(k- 2)>=0)-1) - fa*(2*(p(k)>=0)-1)*(2*(p(k-1)>=0)-1)); else a(2) = (1-(2^-7))*a_prev(2); Muuttuja p on laskettu etukäteen kertoimien päivitystä varten ja muuttuja fa on a(1) perusteella laskettu muuttuja. Kuudennen asteen suotimen kertoimet päivitetään standardin kaavan 2-12A mukaisesti

20 15 for i = 1:6 if ( k-i > 0), b(i)=(1-(2^-8))*b_prev(i)+(2^-7)*(2*(dq(k)>=0)-1)*(2*(dq(ki)>=0)-1); else b(i) = (1-(2^-8))*b_prev(i); Muuttujassa b_prev on kuudennen asteen suotimen kertoimet edelliseltä kierrokselta ja muuttujassa dq on kvantisoitujen erotusten arvot. Pääsilmukan jälkeen piirretään kuvaaja alkuperäisestä signaalista, uudelleenmuodostetusta signaalista ja skaalauskertoimen muutoksista, skaalataan uudelleenmuodostetun signaalin arvot välille [-1 1] ja kirjoitetaan nämä uuteen wav-tiedostoon. Lopuksi lasketaan ulostuloparametrit.

21 16 6 TULOKSET JA JOHTOPÄÄTÖKSET Tässä luvussa esittelen edellisessä luvussa esitellyllä koodilla saadut tulokset testitiedostoille ja yhteenvedon tuloksista. Taulukko 3 Koodekilla saadut testitulokset Tiedostonimi Näytteenottotaajuus (Hz) Pituus (s) Tiedostokoko (bitteinä) Pakattu tiedostokoko (bitteinä) Pakkaussuhde ENG_F.wav % ENG_M.wav % female.wav % male.wav % Looppi1.wav % Runi.wav % Testi.wav % 4 ensimmäistä testitiedostoa sisälsivät englanninkielistä puhetta ja loput kolme olivat musiikinteko-ohjelmalla luotuja yksinkertaisia kappaleita, jotka sisälsivät rumpukomppeja, sähköurkuja tai pianon soittoa. Jokainen pakattu tiedosto on koodattu käyttäen kahdeksaa bittiä. Pakattujen tiedostojen äänenlaatu on hyvä, mutta kvantisoinnista johtuva kohina on huomattavaa. Kohina vaimenee käytettäessä enemmän bittejä, mutta pakkaussuhde tietenkin pienenee. Valitettavasti ajan loppuessa en ehtinyt toteuttaa suodinta joka olisi suodattanut kohinan pois. Itselleni tuli yllätyksenä kuinka hyvin koodekki pakkasi musiikkitiedostot, vaikkakin ne olivat yksinkertaisia sisällöltään.

22 17 Kuva 7 Tiedoston female.wav kuvaaja Kuvaajasta näkee kuinka skaalauskerroin muuttuu signaalin muuttuessa, sekä kuinka hyvin koodekki osaa luoda signaalin uudestaan. Kuva 8 Tiedoston Runi.wav ensimmäistä näytettä

23 Kuvasta 8 näkee, että skaalauskertoimen muutos on suurinta silloin kun signaalissa tapahtuu suuria ja nopeita muutoksia. Tämä työ oli varsin opettavainen. Olen pitkään ollut kiinnostunut äänisignaalien, varsinkin musiikkitiedostojen pakkaamisesta ja tämä työ mahdollisti tarkemman perehtymisen aiheeseen. Lisäksi työ herätti mielenkiintoa adaptiiviseen suodatukseen ja kvantisointiin, joihin aion perehtyä tarkemmin tulevaisuudessa. 18

24 19 LÄHTEET [1] Wikipedia, Digital recording [WWW]. [Viitattu ]. Saatavissa: [2] Kester, W. The Data Conversion Handbook. 2005, Newnes. 214p [Verkkodokumentti] [Viitattu ]. Saatavissa: [3] Wikipedia, Pulse-code modulation [WWW]. [Viitattu ]. Saatavissa: [4] Koppinen, K. SGN-4050 Puheenkoodaus, luentomoniste, s. 43, Helmikuu Saatavissa: [5] Wikipedia, DPCM [WWW]. [Viitattu xx.x.2010]. Saatavissa [6] Cisco Systems, Waveform Coding Techniques, Document ID: 8123, Helmikuu [Verkkodokumentti]. [Viitattu ]. Saatavissa: [7] Wikipedia, ADPCM [WWW]. [Viitattu ]. Saatavissa: [8] ADPCM Codecs [WWW]. [Viitattu ]. Saatavissa: [9] Wikipedia, Audio compression (data) [WWW]. [Viitattu ]. Saatavissa: [10] Wikipedia, Psychoacoustics [WWW]. [Viitattu ]. Saatavissa: [11] Huttunen, H. SGN-1251 Signaalinkäsittelyn sovellukset, opetusmoniste, s.134, Tammikuu Saatavissa: [12] Wikipedia, MP3 [WWW]. [Viitattu ]. Saatavissa: [13] Chiariglione, L., Riding the Media Bits MPEG s first Steps, Syyskuu [WWW]. [Viitattu ]. Saatavissa:

25 [14] Hans, M., Schafer, R.W., Lossless Compression of Digital Audio, Signal Processing Magazine IEEE, Jul [Verkkodokumentti]. [Viitattu ]. Rajoitettu saatavuus osoitteessa: Type=inst [15] Wikipedia, Huffman coding [WWW]. [Viitattu ]. Saatavissa: [16] Coalson, J., FLAC, [WWW]. [Viitattu ]. Saatavissa: [17] G.726 [standardi]. [Viitattu ]. Saatavissa: G.726/recommation.asp?lang=en&parent=T-REC-G I 20

26 21 LIITE 1: MATLAB-KOODI % Lari Kumpu % lari.kumpu@tut.fi % SGN-1970 Signaalinkäsittelyn laitoksen kandidaatintyöseminaari % ADPCM-koodekki puhesignaaleille % Parametrit: % input = pakattava tiedosto (pitää olla.wav muodossa) % N = käytettävien bittien määrä (8, 16 tai 32) % output = pakatun tiedoston tiedostonimi function adpcmconv(input, N, output) [s, fs] = wavread(input); s = s.*128; % skaalataan %taulukko nopealle skaalauskertoimelle W=[ ]; %taulukko adaptaationopeudelle F=[ ]; %skaalauskerroin y = 0; %kvantisoijan ulostuloindeksi I = 0; %nopea skaalauskerroin yu = 0; yu_prev = 0; %hidas skaalauskerroin yl = 0; yl_prev = 0; %iir-suotimen kertoimet a = [0 0]; %edellisen kierroksen kertoimet tänne a_prev = [0 0]; %fir-suotimen kertoimet b = [ ]; %edellisen kierroksen kertoimet tänne b_prev = [ ]; %tiedoston pituus näytteissä pituus = length(s); %lyhyt adaptaationopeuden kerroin dms = 0; dms_prev = 0; %pitkä adaptaationopeuden kerroin dml = 0; dml_prev = 0; %muuttujat skaalauskertoimelle ap = 0; ap_prev = 0; al = 0; %muuttuja toisen asteen suotimen kertoimien päivitykseen fa = 0; %uudelleenmuodostettu signaali sr = zeros(1,pituus);

27 22 %signaalin estimaatti se = zeros(1,pituus); %muuttuja estimaatin laskemiseen sez = zeros(1,pituus); p = zeros(1,pituus); %kvantisoidut erotukset dq = zeros(1,pituus); %erotussignaalit dk = zeros(1,pituus); kvantisointitaso = zeros(1,pituus); %signaalien näytteet sl = zeros(1,pituus); skaalauskerroin = zeros(1,pituus); for k = 1:pituus %otetaan uusi näyte sl(k) = s(k); % lasketaan estimaatti se(k) edellisten suodinkertoimien avulla % ja uudelleen muodostettujen arvojen perusteella %kaava 2-9 se(k) = 0; for i = 1:2, if ( k-i > 0) se(k) = se(k) + a_prev(i)*sr(k-i); sez(k) = 0; for i = 1:6, if ( k-i > 0) sez(k) = sez(k)+b_prev(i)*dq(k-i); se(k) = se(k) + sez(k); %lasketaan nykyisen näytteen ja estimaatin erotus %kaava 2-1 standardissa dk(k) = sl(k) - se(k); %otetaan nykyisen näytteen merkki talteen dksign = (2*(dk(k)>=0)-1); %muutetaan nykyinen näyte logaritmiselle asteikolle ja skaalataan dkk = log2(abs(dk(k)))-y; %kvantisoidaan erotus if dkk >= 3.12 I = 7; d = 3.32; elseif dkk >= 2.72 && dkk < 3.12 I = 6; d = 2.91; elseif dkk >= 2.34 && dkk < 2.72 I = 5; d = 2.52; elseif dkk >= 1.91 && dkk < 2.34 I = 4; d = 2.13; elseif dkk >= 1.38 && dkk < 1.91

28 23 I = 3; d = 1.66; elseif dkk >= 0.62 && dkk < 1.38 I = 2; d = 1.05; elseif dkk >= && dkk < 0.62 I = 1; d = 0.031; elseif dkk < I = 0; d = 0; kvantisointitaso(k) = I; skaalauskerroin(k) = y; %muutetaan arvo takaisin lineaariselle asteikolle dq(k) = dksign*2^(d+y); %lasketaan nopea skaalauskerroin %kaava 2-2 standardissa yu = (1-(2^-5))*y+(2^-5)*W(I+1); %yu:n täytyy olla välillä 1.06 <= yu <= if yu < 1.06 yu = 1.06; elseif yu > yu = 10.00; %lasketaan skaalaustason magnitudin lyhyt ja pitkäaikainen keskiarvo dms = (1-(2^-5))*dms_prev+(2^-7)*F(I+1); dml = (1-(2^-7))*dml_prev+(2^-7)*F(I+1); %määritetään muuttuja ap if abs(dms-dml) >= (2^-3)*dml ap = (1-(2^-4))*ap_prev+(2^-3); elseif y < 3 ap = (1-(2^-4))*ap_prev+(2^-3); else ap = (1-(2^-4))*ap_prev; %jolla määritetään muuttuja al skaalauskerrointa varten if ap_prev > 1 al = 1; elseif ap_prev <= 1 al = ap_prev; %lasketaan hidas skaalauskerroin %kaava 2-3 standardissa yl = (1-(2^-6))*yl_prev+(2^-6)*yu; %skaalauskerroin lasketaan yhdistämällä hidas ja nopea skaalaus kerroin %kaava 2-4 standardissa y = al*yu_prev+(1-al)*yl_prev; %muodostetaan signaali laskemalla estimaatti ja kvantisoitu erotus %yhteen sr(k) = se(k)+dq(k); %lasketaan muuttuja p kertoimien päivitystä varten p(k) = dq(k)+sez(k);

29 24 %päivitetään toisen asteen suotimen kertoimet %kaava 2-10 if ( k > 1) a(1) = (1-(2^-8))*a_prev(1)+(3*(2^-8))*(2*(p(k)>=0)-1)*(2*(p(k- 1)>=0)-1); else a(1) = (1-(2^-8))*a_prev(1); %lasketaan muuttuja fa if abs(a_prev(1)) <= 2^-1 fa = 4*a_prev(1); elseif abs(a(1)) > 2^-1 fa = 2*sign(a_prev(1)); %kaava 2-11 if ( k > 2), a(2) = (1-(2^-7))*a_prev(2)+(2^-7)*((2*(p(k)>=0)-1)*(2*(p(k- 2)>=0)-1)-fa*(2*(p(k)>=0)-1)*(2*(p(k-1)>=0)-1)); else a(2) = (1-(2^-7))*a_prev(2); %stabiilisuusehdot if a(2) > 0.75 a(2) = 0.75; elseif a(2) < a(2) = -0.75; if a(1) > 1-(2^-4)-a(2) a(1) = 1-(2^-4)-a(2); elseif a(1) <= -(1-(2^-4)-a(2)) a(1) = -(1-(2^-4)-a(2)); %päivitetään kuudennen asteen suotimen kertoimet %kaava 2-12A for i = 1:6 if ( k-i > 0), b(i)=(1-(2^-8))*b_prev(i)+(2^-7)*(2*(dq(k)>=0)- 1)*(2*(dq(k-i)>=0)-1); else b(i) = (1-(2^-8))*b_prev(i); %muuttujien arvot talteen a_prev = a; b_prev = b; yl_prev = yl; yu_prev = yu; dms_prev = dms; dml_prev = dml; ap_prev = ap; close all;

30 25 %piirretään alkuperäinen signaali plot(s,'b'); hold on; %piirretään pakattu signaali plot(sr, 'r'); %piirretään skaalauskerroin plot(skaalauskerroin, 'g'); leg('alkuperäinen', 'rekonstruktio', 'skaalauskerroin'); %skaalataan arvot välille tiedostonkirjoitusta varten srr = sr/max(abs(sr)); %kirjoitetaan tiedostoon wavwrite(srr,fs,n,output);

Puheenkoodaus. Olivatpa kerran iloiset serkukset. PCM, DPCM ja ADPCM

Puheenkoodaus. Olivatpa kerran iloiset serkukset. PCM, DPCM ja ADPCM Puheenkoodaus Olivatpa kerran iloiset serkukset PCM, DPCM ja ADPCM PCM eli pulssikoodimodulaatio Koodaa jokaisen signaalinäytteen binääriseksi (eli vain ykkösiä ja nollia sisältäväksi) luvuksi kvantisointitasolle,

Lisätiedot

puheen laatu kärsii koodauksesta mahdollisimman vähän. puhe pakkautuu mahdollisimman pieneen määrään bittejä.

puheen laatu kärsii koodauksesta mahdollisimman vähän. puhe pakkautuu mahdollisimman pieneen määrään bittejä. Luku 1 Puheen koodaus Puheen koodauksella tarkoitetaan puhesignaalin esittämiseen tarvittavan bittimäärän pienentämistä sillä tavalla, että puhesignaalin laatu ja ymmärrettävyys kärsivät mahdollisimman

Lisätiedot

AV-muotojen migraatiotyöpaja - ääni. KDK-pitkäaikaissäilytys 2013 -seminaari 6.5.2013 / Juha Lehtonen

AV-muotojen migraatiotyöpaja - ääni. KDK-pitkäaikaissäilytys 2013 -seminaari 6.5.2013 / Juha Lehtonen AV-muotojen migraatiotyöpaja - ääni KDK-pitkäaikaissäilytys 2013 -seminaari 6.5.2013 / Juha Lehtonen Äänimuodot Ääneen vaikuttavia asioita Taajuudet Äänen voimakkuus Kanavien määrä Näytteistys Bittisyvyys

Lisätiedot

Ongelma 1: Onko datassa tai informaatiossa päällekkäisyyttä?

Ongelma 1: Onko datassa tai informaatiossa päällekkäisyyttä? Ongelma 1: Onko datassa tai informaatiossa päällekkäisyyttä? 2012-2013 Lasse Lensu 2 Ongelma 2: Voidaanko dataa tai informaatiota tallettaa tiiviimpään tilaan koodaamalla se uudelleen? 2012-2013 Lasse

Lisätiedot

T-61.246 DSP: GSM codec

T-61.246 DSP: GSM codec T-61.246 DSP: GSM codec Agenda Johdanto Puheenmuodostus Erilaiset codecit GSM codec Kristo Lehtonen GSM codec 1 Johdanto Analogisen puheen muuttaminen digitaaliseksi Tiedon tiivistäminen pienemmäksi Vähentää

Lisätiedot

Kuvan pakkaus JPEG (Joint Photographic Experts Group)

Kuvan pakkaus JPEG (Joint Photographic Experts Group) Kuvan pakkaus JPEG (Joint Photographic Experts Group) Arne Broman Mikko Toivonen Syksy 2003 Historia 1840 1895 1920-luku 1930-luku Fotografinen filmi Louis J. M. Daguerre, Ranska Ensimmäinen julkinen elokuva

Lisätiedot

Puheenkoodaus. koodekki toimii hyvin myös kohinaiselle puheelle (ja mielellään vielä musiikille ja muille yleisille signaaleille)

Puheenkoodaus. koodekki toimii hyvin myös kohinaiselle puheelle (ja mielellään vielä musiikille ja muille yleisille signaaleille) Puheenkoodaus Puheenkoodauksella tarkoitetaan puhesignaalin esittämiseen tarvittavan bittimäärän pienentämistä sillä tavalla, että puhesignaalin laatu ja ymmärrettävyys kärsivät mahdollisimman vähän. Puheenkoodauksella

Lisätiedot

Laskuharjoitus 4 ( ): Tehtävien vastauksia

Laskuharjoitus 4 ( ): Tehtävien vastauksia TT12S1E Tietoliikenteen perusteet Metropolia/A. Koivumäki Laskuharjoitus 4 (2.10.2013): Tehtävien vastauksia 1. Tutkitaan signaalista näytteenotolla muodostettua PAM (Pulse Amplitude Modulation) -signaalia.

Lisätiedot

MICHAEL SITTIG ÄÄNEN HÄVIÖTÖN PAKKAAMINEN. Kandidaatintyö

MICHAEL SITTIG ÄÄNEN HÄVIÖTÖN PAKKAAMINEN. Kandidaatintyö MICHAEL SITTIG ÄÄNEN HÄVIÖTÖN PAKKAAMINEN Kandidaatintyö Tarkastaja: lehtori Konsta Koppinen Työ jätetty tarkastettavaksi 24. toukokuuta 2010 II TIIVISTELMÄ TAMPEREEN TEKNILLINEN YLIOPISTO Tietotekniikan

Lisätiedot

Alla olevassa kuvassa on millisekunnin verran äänitaajuisen signaalin aaltomuotoa. Pystyakselilla on jännite voltteina.

Alla olevassa kuvassa on millisekunnin verran äänitaajuisen signaalin aaltomuotoa. Pystyakselilla on jännite voltteina. TT12S1E Tietoliikenteen perusteet Metropolia/A. Koivumäki 1 Kirjan lukuun 3 liittyvää lisäselitystä ja esimerkkejä Kirjan luvussa 3 (Signals Carried over the Network) luodaan katsaus siihen, minkälaisia

Lisätiedot

TL5503 DSK, laboraatiot (1.5 op) Audiosignaalit (ver 1.0) Jyrki Laitinen

TL5503 DSK, laboraatiot (1.5 op) Audiosignaalit (ver 1.0) Jyrki Laitinen TL5503 DSK, laboraatiot (1.5 op) Audiosignaalit (ver 1.0) Jyrki Laitinen TL5503 DSK, laboraatiot (1.5 op), K2005 1 Suorita oheisten ohjeiden mukaiset tehtävät Matlab- ja SPDemo-ohjelmistoja käyttäen. Kokoa

Lisätiedot

Digitaalinen audio & video I

Digitaalinen audio & video I Digitaalinen audio & video I Johdanto Digitaalinen audio + Psykoakustiikka + Äänen digitaalinen esitys Digitaalinen kuva + JPEG 1 Johdanto Multimediassa hyödynnetään todellista ääntä, kuvaa ja videota

Lisätiedot

Juha Henriksson. Digitaalinen äänentallennus. 5.12.2005 Dr. Juha Henriksson Finnish Jazz & Pop Archive

Juha Henriksson. Digitaalinen äänentallennus. 5.12.2005 Dr. Juha Henriksson Finnish Jazz & Pop Archive Juha Henriksson Digitaalinen äänentallennus 1 Äänen korkeus Ääni on värähtelyä, joka etenee ilmassa ilmamolekyylien harventumina ja tiivistyminä Äänen korkeutta kutsutaan äänen taajuudeksi Taajuuden yksikkö

Lisätiedot

Johdanto tieto- viestintäteknologian käyttöön: Äänitystekniikka. Vfo135 ja Vfp124 Martti Vainio

Johdanto tieto- viestintäteknologian käyttöön: Äänitystekniikka. Vfo135 ja Vfp124 Martti Vainio Johdanto tieto- viestintäteknologian käyttöön: Äänitystekniikka Vfo135 ja Vfp124 Martti Vainio Akustiikka Äänityksen tarkoitus on taltioida paras mahdo!inen signaali! Tärkeimpinä kolme akustista muuttujaa:

Lisätiedot

Digitaalinen audio & video, osa I

Digitaalinen audio & video, osa I Digitaalinen audio & video, osa I Johdanto Digitaalinen audio + Psykoakustiikka + Äänen digitaalinen esitys Digitaalinen kuva +JPEG Petri Vuorimaa 1 Johdanto Multimediassa hyödynnetään todellista ääntä,

Lisätiedot

ELEC-C5070 Elektroniikkapaja (5 op)

ELEC-C5070 Elektroniikkapaja (5 op) (5 op) Luento 5 A/D- ja D/A-muunnokset ja niiden vaikutus signaaleihin Signaalin A/D-muunnos Analogia-digitaalimuunnin (A/D-muunnin) muuttaa analogisen signaalin digitaaliseen muotoon, joka voidaan lukea

Lisätiedot

SGN-4051 Puheenkoodaus

SGN-4051 Puheenkoodaus SGN-4051 Puheenkoodaus Konsta Koppinen konsta.koppinen@tut.fi 23. helmikuuta 2009 Sisältö 1 Aaltomuotokoodaus 1 1.1 Pulssikoodimodulaatio eli PCM.................. 2 1.1.1 Epätasavälinen kvantisointi.................

Lisätiedot

Synteesi-analyysi koodaus

Synteesi-analyysi koodaus Luku 2 Synteesi-analyysi koodaus Tärkein koodausmenetelmä puheenkoodausstandardeissa 9-luvulta alkaen on ollut synteesi-analyysi koodaus (engl. analysis-by-synthesis). Tässä lähestymistavassa optimaaliset

Lisätiedot

Digitaalinen audio & video, osa I. Johdanto. Digitaalisen audion sovellusalueet. Johdanto. Taajuusalue. Psykoakustiikka. Johdanto Digitaalinen audio

Digitaalinen audio & video, osa I. Johdanto. Digitaalisen audion sovellusalueet. Johdanto. Taajuusalue. Psykoakustiikka. Johdanto Digitaalinen audio Digitaalinen audio & video, osa I Johdanto Digitaalinen audio + Psykoakustiikka + Äänen digitaalinen esitys Digitaalinen kuva +JPEG Petri Vuorimaa 1 Johdanto Multimediassa hyödynnetään todellista ääntä,

Lisätiedot

SGN-1251 Signaalinkäsittelyn sovellukset Välikoe Heikki Huttunen

SGN-1251 Signaalinkäsittelyn sovellukset Välikoe Heikki Huttunen SGN-5 Signaalinkäsittelyn sovellukset Välikoe.. Heikki Huttunen Tentissä ja välikokeessa saa käyttää vain tiedekunnan laskinta. Tenttikysymyksiä ei tarvitse palauttaa. Sivuilla - on. Sivuilla 4-6 on. Vastaa

Lisätiedot

Dynamiikan hallinta Lähde: Zölzer. Digital audio signal processing. Wiley & Sons, 2008. Zölzer (ed.) DAFX Digital Audio Effects. Wiley & Sons, 2002.

Dynamiikan hallinta Lähde: Zölzer. Digital audio signal processing. Wiley & Sons, 2008. Zölzer (ed.) DAFX Digital Audio Effects. Wiley & Sons, 2002. Dynamiikan hallinta Lähde: Zölzer. Digital audio signal processing. Wiley & Sons, 2008. Zölzer (ed. DAFX Digital Audio Effects. Wiley & Sons, 2002. Sisältö:! Johdanto!! Ajallinen käyttäytyminen! oteutus!

Lisätiedot

1 Diskreettiaikainen näytteistys. 1.1 Laskostuminen. Laskostuminen

1 Diskreettiaikainen näytteistys. 1.1 Laskostuminen. Laskostuminen AD/DA muunnos Lähteet: Pohlman. (1995). Principles of digital audio (3rd ed). Zölzer. (008). Digital audio signal processing (nd ed). Reiss. (008), Understanding sigma-delta modulation: The solved and

Lisätiedot

Digitaalitekniikan matematiikka Luku 1 Sivu 1 (19) Johdatus digitaalitekniikkaan

Digitaalitekniikan matematiikka Luku 1 Sivu 1 (19) Johdatus digitaalitekniikkaan Digitaalitekniikan matematiikka Luku 1 Sivu 1 (19) Digitaalitekniikan matematiikka Luku 1 Sivu 2 (19) Johdanto Tässä luvussa esitellään tiedon lajeja ja tiedolle tehtävää käsittelyä käsitellään tiedon

Lisätiedot

THE audio feature: MFCC. Mel Frequency Cepstral Coefficients

THE audio feature: MFCC. Mel Frequency Cepstral Coefficients THE audio feature: MFCC Mel Frequency Cepstral Coefficients Ihmiskuulo MFCC- kertoimien tarkoituksena on mallintaa ihmiskorvan toimintaa yleisellä tasolla. Näin on todettu myös tapahtuvan, sillä MFCC:t

Lisätiedot

Kompleksiluvut signaalin taajuusjakauman arvioinnissa

Kompleksiluvut signaalin taajuusjakauman arvioinnissa Kompleksiluvut signaalin taajuusjakauman arvioinnissa Vierailuluento IMA-kurssilla Heikki Huttunen Lehtori, TkT Signaalinkäsittely, TTY heikki.huttunen@tut.fi Department of Signal Processing Fourier-muunnos

Lisätiedot

Flash AD-muunnin. Ominaisuudet. +nopea -> voidaan käyttää korkeataajuuksisen signaalin muuntamiseen (GHz) +yksinkertainen

Flash AD-muunnin. Ominaisuudet. +nopea -> voidaan käyttää korkeataajuuksisen signaalin muuntamiseen (GHz) +yksinkertainen Flash AD-muunnin Koostuu vastusverkosta ja komparaattoreista. Komparaattorit vertailevat vastuksien jännitteitä referenssiin. Tilanteesta riippuen kompraattori antaa ykkösen tai nollan ja näistä kootaan

Lisätiedot

1 Johdanto. Johdanto Vaatimuksia audiokoodekille. Johdanto 1.1 Vaatimuksia audiokoodekille

1 Johdanto. Johdanto Vaatimuksia audiokoodekille. Johdanto 1.1 Vaatimuksia audiokoodekille Kuulon malleihin perustuva audiokoodaus, osa I Lähteet: Kahrs, Brandenburg, (Editors). (1998). Applications of digital signal processing to audio and acoustics Kluwer Academic. Bernd Edler. (1997). Low

Lisätiedot

Digitaalinen Audio & Video I

Digitaalinen Audio & Video I Digitaalinen Audio & Video I Johdanto Digitaalinen audio Psykoakustiikka Äänen digitaalinen esitys Monikanavaääni ja äänen digitaalinen siirto Digitaalinen kuva Diskreetti kosiinimuunnos JPEG 1 Johdanto

Lisätiedot

Signaalien datamuunnokset. Digitaalitekniikan edut

Signaalien datamuunnokset. Digitaalitekniikan edut Signaalien datamuunnokset Datamuunnosten teoriaa Muunnosten taustaa Muunnosten teoriaa Muunnosten rajoituksia ja ongelmia Petri Kärhä 09/02/2009 Signaalien datamuunnokset 1 Digitaalitekniikan edut Tarkoituksena

Lisätiedot

Signaalien datamuunnokset

Signaalien datamuunnokset Signaalien datamuunnokset Datamuunnosten teoriaa Muunnosten taustaa Muunnosten teoriaa Muunnosten rajoituksia ja ongelmia Petri Kärhä 06/02/2004 Luento 4a: Signaalien datamuunnokset 1 Digitaalitekniikan

Lisätiedot

AV-muotojen migraatiotyöpaja - video. KDK-pitkäaikaissäilytys seminaari / Juha Lehtonen

AV-muotojen migraatiotyöpaja - video. KDK-pitkäaikaissäilytys seminaari / Juha Lehtonen AV-muotojen migraatiotyöpaja - video KDK-pitkäaikaissäilytys 2013 -seminaari 6.5.2013 / Juha Lehtonen Elävän kuvan muodot Videoon vaikuttavia asioita Kuvamuotojen ominaisuudet Audiomuotojen ominaisuudet

Lisätiedot

Laskuharjoitus 2 ( ): Tehtävien vastauksia

Laskuharjoitus 2 ( ): Tehtävien vastauksia TT12S1E Tietoliikenteen perusteet Metropolia/A. Koivumäki Laskuharjoitus 2 (11.9.2013): Tehtävien vastauksia 1. Eräässä kuvitteellisessa radioverkossa yhdessä radiokanavassa voi olla menossa samanaikaisesti

Lisätiedot

Successive approximation AD-muunnin

Successive approximation AD-muunnin AD-muunnin Koostuu neljästä osasta: näytteenotto- ja pitopiiristä, (sample and hold S/H) komparaattorista, digitaali-analogiamuuntimesta (DAC) ja siirtorekisteristä. (successive approximation register

Lisätiedot

Tekniikka ja liikenne (5) Tietoliikennetekniikan laboratorio

Tekniikka ja liikenne (5) Tietoliikennetekniikan laboratorio Tekniikka ja liikenne 4.4.2011 1 (5) Tietoliikennetekniikan laboratorio Työ 1 PCM-työ Työn tarkoitus Työssä tutustutaan pulssikoodimodulaation tekniseen toteutustapaan. Samalla nähdään, miten A/Dmuunnin

Lisätiedot

ELEC-C7230 Tietoliikenteen siirtomenetelmät

ELEC-C7230 Tietoliikenteen siirtomenetelmät ELEC-C7230 Tietoliikenteen siirtomenetelmät Laskuharjoitus 8 - ratkaisut 1. Tehtävässä on taustalla ajatus kantoaaltomodulaatiosta, jossa on I- ja Q-haarat, ja joka voidaan kuvata kompleksiarvoisena kantataajuussignaalina.

Lisätiedot

Signaalien generointi

Signaalien generointi Signaalinkäsittelyssä joudutaan usein generoimaan erilaisia signaaleja keinotekoisesti. Tyypillisimpiä generoitavia aaltomuotoja ovat eritaajuiset sinimuotoiset signaalit (modulointi) sekä normaalijakautunut

Lisätiedot

Mediaanisuodattimet. Tähän asti käsitellyt suodattimet ovat olleet lineaarisia. Niille on tyypillistä, että. niiden ominaisuudet tunnetaan hyvin

Mediaanisuodattimet. Tähän asti käsitellyt suodattimet ovat olleet lineaarisia. Niille on tyypillistä, että. niiden ominaisuudet tunnetaan hyvin Mediaanisuodattimet Tähän asti käsitellyt suodattimet ovat olleet lineaarisia. Niille on tyypillistä, että niiden ominaisuudet tunnetaan hyvin niiden analysointiin on olemassa vakiintuneita menetelmiä

Lisätiedot

TL5503 DSK, laboraatiot (1.5 op) Suodatus 1 (ver 1.0) Jyrki Laitinen

TL5503 DSK, laboraatiot (1.5 op) Suodatus 1 (ver 1.0) Jyrki Laitinen TL5503 DSK, laboraatiot (1.5 op) Suodatus 1 (ver 1.0) Jyrki Laitinen TL5503 DSK, laboraatiot (1.5 op), K2005 1 Suorita oheisten ohjeiden mukaiset tehtävät Matlab-ohjelmistoa käyttäen. Kokoa erilliseen

Lisätiedot

IIR-suodattimissa ongelmat korostuvat, koska takaisinkytkennästä seuraa virheiden kertautuminen ja joissakin tapauksissa myös vahvistuminen.

IIR-suodattimissa ongelmat korostuvat, koska takaisinkytkennästä seuraa virheiden kertautuminen ja joissakin tapauksissa myös vahvistuminen. TL536DSK-algoritmit (J. Laitinen)..5 Välikoe, ratkaisut Millaisia ongelmia kvantisointi aiheuttaa signaalinkäsittelyssä? Miksi ongelmat korostuvat IIR-suodatinten tapauksessa? Tarkastellaan Hz taajuista

Lisätiedot

1 Johdanto. Tiedonsiirron kaistanleveys kasvaa jatkuvasti, mutta kaistan tarve kasvaa vielä enemmän tarve kompressiotekniikoille

1 Johdanto. Tiedonsiirron kaistanleveys kasvaa jatkuvasti, mutta kaistan tarve kasvaa vielä enemmän tarve kompressiotekniikoille Kuulon malleihin perustuva audiokoodaus Lähteet: Kahrs, Brandenburg, (Editors). (1998). Applications of digital signal processing to audio and acoustics. Kluwer Academic. Bernd Edler. (1997). Low bit rate

Lisätiedot

Kuulon malleihin perustuva audiokoodaus, osa II

Kuulon malleihin perustuva audiokoodaus, osa II Kuulon malleihin perustuva audiokoodaus, osa II Lähteet: Kahrs, Brandenburg, (Editors). (1998). Applications of digital signal processing to audio and acoustics Kluwer Academic. Bernd Edler. (1997). Low

Lisätiedot

1 Todellisia koodausjärjestelmiä: MPEG Audio 1 ja 2. 1.1 MPEG ensimmäinen sukupolvi. MPEG Audio 1 ja 2. Sisältö:

1 Todellisia koodausjärjestelmiä: MPEG Audio 1 ja 2. 1.1 MPEG ensimmäinen sukupolvi. MPEG Audio 1 ja 2. Sisältö: Kuulon malleihin perustuva audiokoodaus, osa II Lähteet: Kahrs, Brandenburg, (Editors). (1998). Applications of digital signal processing to audio and acoustics Kluwer Academic. Bernd Edler. (1997). Low

Lisätiedot

SGN Signaalinkäsittelyn perusteet Välikoe Heikki Huttunen

SGN Signaalinkäsittelyn perusteet Välikoe Heikki Huttunen SGN- Signaalinkäsittelyn perusteet Välikoe.5.4 Heikki Huttunen Tentissä ja välikokeessa saa käyttää vain tiedekunnan laskinta. Tenttikysymyksiä ei tarvitse palauttaa. Sivuilla -3 on. Sivuilla 4-5 on. Sivulla

Lisätiedot

Algoritmit 2. Luento 9 Ti Timo Männikkö

Algoritmit 2. Luento 9 Ti Timo Männikkö Algoritmit 2 Luento 9 Ti 17.4.2018 Timo Männikkö Luento 9 Merkkitiedon tiivistäminen Huffmanin koodi LZW-menetelmä Taulukointi Editointietäisyys Algoritmit 2 Kevät 2018 Luento 9 Ti 17.4.2018 2/29 Merkkitiedon

Lisätiedot

Matematiikka ja teknologia, kevät 2011

Matematiikka ja teknologia, kevät 2011 Matematiikka ja teknologia, kevät 2011 Peter Hästö 3. helmikuuta 2011 Matemaattisten tieteiden laitos Sisältö Kurssi koostuu kuudesta (seitsemästä) toisistaan riippumattomasta luennosta. Aihepiirit ovat:

Lisätiedot

Matias Sumanen Mittaussignaalin häviötön pakkaaminen. Kandidaatintyö

Matias Sumanen Mittaussignaalin häviötön pakkaaminen. Kandidaatintyö Matias Sumanen Mittaussignaalin häviötön pakkaaminen Kandidaatintyö Tarkastaja: Yliopistonlehtori Heikki Huttunen Jätetty tarkastettavaksi: 17.5.2015 2 TIIVISTELMÄ TAMPEREEN TEKNILLINEN YLIOPISTO Signaalinkäsittelyn

Lisätiedot

SGN-4200 Digitaalinen audio

SGN-4200 Digitaalinen audio SGN-4200 Digitaalinen audio Luennot, kevät 2013, periodi 4 Anssi Klapuri Tampereen teknillinen yliopisto Kurssin tavoite Johdanto 2! Tarjota tiedot audiosignaalinkäsittelyn perusteista perusoperaatiot,

Lisätiedot

Suodatus ja näytteistys, kertaus

Suodatus ja näytteistys, kertaus ELEC-C7230 Tietoliikenteen siirtomenetelmät Luento 6: Kantataajuusvastaanotin AWGN-kanavassa II: Signaaliavaruuden vastaanotin a Olav Tirkkonen Aalto, Tietoliikenne- ja tietoverkkotekniikan laitos a [10.6.3-10.6.6;

Lisätiedot

1 Määrittele seuraavat langattoman tiedonsiirron käsitteet.

1 Määrittele seuraavat langattoman tiedonsiirron käsitteet. 1 1 Määrittele seuraavat langattoman tiedonsiirron käsitteet. Radiosignaalin häipyminen. Adaptiivinen antenni. Piilossa oleva pääte. Radiosignaali voi edetä lähettäjältä vastanottajalle (jotka molemmat

Lisätiedot

Digitaalinen audio

Digitaalinen audio 8003203 Digitaalinen audio Luennot, kevät 2005 Tuomas Virtanen Tampereen teknillinen yliopisto Kurssin tavoite Johdanto 2 Tarjota tiedot audiosignaalinkäsittelyn perusteista perusoperaatiot, sekä niissä

Lisätiedot

1. Määritä pienin näytelauseen ehdon mukainen näytetaajuus taajuus seuraaville signaaleille:

1. Määritä pienin näytelauseen ehdon mukainen näytetaajuus taajuus seuraaville signaaleille: TL61, Näytejonosysteemit (K00) Harjoitus 1. Määritä pienin näytelauseen ehdon mukainen näytetaajuus taajuus seuraaville signaaleille: a) 1 (t) = cos(000πt) + sin(6000πt) + cos(00πt) ja ) (t) = cos(00πt)cos(000πt).

Lisätiedot

Puhetie, PCM järjestelmä, johtokoodi

Puhetie, PCM järjestelmä, johtokoodi Puhetie, PCM järjestelmä, johtokoodi PCM~PulseCodeModulation Näytteenotto Kvantisointi ÿ Lineaarinen ÿ Epälineaarinen Kvantisointisärö TDM-kanavointi PCM-kehysrakenne, CRC -ylikehys PCM, PCM, PCM 8, PCM

Lisätiedot

S-114.3812 Laskennallinen Neurotiede

S-114.3812 Laskennallinen Neurotiede S-114.381 Laskennallinen Neurotiede Projektityö 30.1.007 Heikki Hyyti 60451P Tehtävä 1: Virityskäyrästön laskeminen Luokitellaan neuroni ensin sen mukaan, miten se vastaa sinimuotoisiin syötteisiin. Syöte

Lisätiedot

Matlab-tietokoneharjoitus

Matlab-tietokoneharjoitus Matlab-tietokoneharjoitus Tämän harjoituksen tavoitteena on: Opettaa yksinkertaisia piirikaavio- ja yksikkömuunnoslaskuja. Opettaa Matlabin perustyökaluja mittausten analysoimiseen. Havainnollistaa näytteenottotaajuuden,

Lisätiedot

ELEC-C5340 - Sovellettu digitaalinen signaalinkäsittely. Äänisignaalien näytteenotto ja kvantisointi Dither Oskillaattorit Digitaalinen suodatus

ELEC-C5340 - Sovellettu digitaalinen signaalinkäsittely. Äänisignaalien näytteenotto ja kvantisointi Dither Oskillaattorit Digitaalinen suodatus L1: Audio Prof. Vesa Välimäki ELEC-C5340 - Sovellettu digitaalinen signaalinkäsittely Luennon sisältö Äänisignaalien näytteenotto ja kvantisointi Dither Oskillaattorit Digitaalinen suodatus Lyhyt FIR-suodin

Lisätiedot

Virheen kasautumislaki

Virheen kasautumislaki Virheen kasautumislaki Yleensä tutkittava suure f saadaan välillisesti mitattavista parametreistä. Tällöin kokonaisvirhe f määräytyy mitattujen parametrien virheiden perusteella virheen kasautumislain

Lisätiedot

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti SGN-1200 Signaalinkäsittelyn menetelmät, Tentti 18.3.2008 Kirjoita nimesi ja opiskelijanumerosi jokaiseen paperiin. Vastauspaperit tullaan irrottamaan toisistaan. Jos tila ei riitä, jatka kääntöpuolelle

Lisätiedot

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti SG-1200 Signaalinkäsittelyn menetelmät, Tentti 24.4.2006 Kirjoita nimesi ja opiskelijanumerosi jokaiseen paperiin. Vastauspaperit tullaan irrottamaan toisistaan. Jos tila ei riitä, jatka kääntöpuolelle

Lisätiedot

1. Perusteita. 1.1. Äänen fysiikkaa. Ääniaalto. Aallonpituus ja amplitudi. Taajuus (frequency) Äänen nopeus

1. Perusteita. 1.1. Äänen fysiikkaa. Ääniaalto. Aallonpituus ja amplitudi. Taajuus (frequency) Äänen nopeus 1. Perusteita 1. Äänen fysiikkaa 2. Psykoakustiikka 3. Äänen syntetisointi 4. Samplaus ja kvantisointi 5. Tiedostoformaatit 1.1. Äänen fysiikkaa ääni = väliaineessa etenevä mekaaninen värähtely (aaltoliike),

Lisätiedot

Digitaalinen tiedonsiirto ja siirtotiet

Digitaalinen tiedonsiirto ja siirtotiet A! Aalto University Comnet ELEC-C7230 Tietoliikenteen siirtomenetelmät, Luento 1 Digitaalinen tiedonsiirto ja siirtotiet Olav Tirkkonen [Luku 1: Introduction, kokonaisuudessaan] A! OSI-kerrokset Tiedonsiirtojärjestelmiä

Lisätiedot

Muuntavat analogisen signaalin digitaaliseksi Vertaa sisääntulevaa signaalia referenssijännitteeseen Sarja- tai rinnakkaismuotoinen Tyypilliset

Muuntavat analogisen signaalin digitaaliseksi Vertaa sisääntulevaa signaalia referenssijännitteeseen Sarja- tai rinnakkaismuotoinen Tyypilliset Muuntavat analogisen signaalin digitaaliseksi Vertaa sisääntulevaa signaalia referenssijännitteeseen Sarja- tai rinnakkaismuotoinen Tyypilliset valintakriteerit resoluutio ja nopeus Yleisimmät A/D-muunnintyypit:

Lisätiedot

A/D-muuntimia. Flash ADC

A/D-muuntimia. Flash ADC A/D-muuntimia A/D-muuntimen valintakriteerit: - bittien lukumäärä instrumentointi 6 16 audio/video/kommunikointi/ym. 16 18 erikoissovellukset 20 22 - Tarvittava nopeus hidas > 100 μs (

Lisätiedot

VÄRISPEKTRIKUVIEN TEHOKAS SIIRTO TIETOVERKOISSA

VÄRISPEKTRIKUVIEN TEHOKAS SIIRTO TIETOVERKOISSA VÄRISPEKTRIKUVIEN TEHOKAS SIIRTO TIETOVERKOISSA Juha Lehtonen 20.3.2002 Joensuun yliopisto Tietojenkäsittelytiede Kandidaatintutkielma ESIPUHE Olen kirjoittanut tämän kandidaatintutkielman Joensuun yliopistossa

Lisätiedot

SGN Signaalinkäsittelyn perusteet Välikoe Heikki Huttunen

SGN Signaalinkäsittelyn perusteet Välikoe Heikki Huttunen SGN-11 Signaalinkäsittelyn perusteet Välikoe 3.5.16 Heikki Huttunen Laskimen käyttö sallittu. Muiden materiaalien käyttö ei sallittu. Tenttikysymyksiä ei tarvitse palauttaa. Sivuilla 1-3 on. Sivuilla 4-5

Lisätiedot

TL5503 DSK, laboraatiot (1.5 op) Suodatus 2 (ver 1.0) Jyrki Laitinen

TL5503 DSK, laboraatiot (1.5 op) Suodatus 2 (ver 1.0) Jyrki Laitinen TL5503 DSK, laboraatiot (1.5 op) Suodatus 2 (ver 1.0) Jyrki Laitinen TL5503 DSK, laboraatiot (1.5 op), K2005 1 Suorita oheisten ohjeiden mukaiset tehtävät Matlab-ohjelmistoa käyttäen. Kokoa erilliseen

Lisätiedot

SGN-1200 Signaalinkäsittelyn menetelmät Välikoe

SGN-1200 Signaalinkäsittelyn menetelmät Välikoe SGN-00 Signaalinkäsittelyn menetelmät Välikoe 9.3.009 Sivuilla - on. Älä vastaa siihen, jos et ollut ensimmäisessä välikokeessa. Tentin kysymykset ovat sivuilla 3-4. Vastaa vain jompaan kumpaan kokeeseen,

Lisätiedot

Tuntematon järjestelmä. Adaptiivinen suodatin

Tuntematon järjestelmä. Adaptiivinen suodatin 1 1 Vastaa lyhyesti seuraaviin a) Miksi signaaleja ylinäytteistetään AD- ja DA-muunnosten yhteydessä? b) Esittele lohkokaaviona adaptiiviseen suodatukseen perustuva tuntemattoman järjestelmän mallinnus.

Lisätiedot

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti SG-1200 Signaalinkäsittelyn menetelmät, Tentti 21.3.2006 Kirjoita nimesi ja opiskelijanumerosi jokaiseen paperiin. Vastauspaperit tullaan irrottamaan toisistaan. Jos tila ei riitä, jatka kääntöpuolelle

Lisätiedot

1 Olkoon suodattimen vaatimusmäärittely seuraava:

1 Olkoon suodattimen vaatimusmäärittely seuraava: Olkoon suodattimen vaatimusmäärittely seuraava: Päästökaistan maksimipoikkeama δ p =.5. Estokaistan maksimipoikkeama δ s =.. Päästökaistan rajataajuus pb = 5 Hz. Estokaistan rajataajuudet sb = 95 Hz Näytetaajuus

Lisätiedot

Tilastollinen vastepintamallinnus: kokeiden suunnittelu, regressiomallin analyysi, ja vasteen optimointi. Esimerkit laskettu JMP:llä

Tilastollinen vastepintamallinnus: kokeiden suunnittelu, regressiomallin analyysi, ja vasteen optimointi. Esimerkit laskettu JMP:llä Tilastollinen vastepintamallinnus: kokeiden suunnittelu, regressiomallin analyysi, ja vasteen optimointi Esimerkit laskettu JMP:llä Antti Hyttinen Tampereen teknillinen yliopisto 29.12.2003 ii Ohjelmien

Lisätiedot

JATKUVAN AWGN-KANAVAN KAPASITEETTI SHANNON-HARTLEY -LAKI

JATKUVAN AWGN-KANAVAN KAPASITEETTI SHANNON-HARTLEY -LAKI 1 JATKUVAN AWGN-KANAVAN KAPASITEETTI SHANNON-HARTLEY -LAKI Miten tiedonsiirrossa tarvittavat perusresurssit (teho & kaista) riippuvat toisistaan? SHANNONIN 2. TEOREEMA = KANAVAKOODAUS 2 Shannonin 2. teoreema

Lisätiedot

Digitaalinen signaalinkäsittely Kuvankäsittely

Digitaalinen signaalinkäsittely Kuvankäsittely Digitaalinen signaalinkäsittely Kuvankäsittely Teemu Saarelainen, teemu.saarelainen@kyamk.fi Lähteet: Ifeachor, Jervis, Digital Signal Processing: A Practical Approach H.Huttunen, Signaalinkäsittelyn menetelmät,

Lisätiedot

Digitaalinen signaalinkäsittely Desibeliasteikko, suotimen suunnittelu

Digitaalinen signaalinkäsittely Desibeliasteikko, suotimen suunnittelu Digitaalinen signaalinkäsittely Desibeliasteikko, suotimen suunnittelu Teemu Saarelainen, teemu.saarelainen@kyamk.fi Lähteet: Ifeachor, Jervis, Digital Signal Processing: A Practical Approach H.Huttunen,

Lisätiedot

SGN-4200 Digitaalinen Audio Harjoitustyö-info

SGN-4200 Digitaalinen Audio Harjoitustyö-info 1 SGN-4200 Digitaalinen Audio Harjoitustyö-info 04.04.2012 Joonas Nikunen Harjoitystyö - 2 Suorittaminen ja Käytännöt Kurssin pakollinen harjoitustyö: Harjoitellaan audiosignaalinkäsittelyyn tarkoitetun

Lisätiedot

Pianon äänten parametrinen synteesi

Pianon äänten parametrinen synteesi Pianon äänten parametrinen synteesi Jukka Rauhala Pianon akustiikkaa Kuinka ääni syntyy Sisält ltö Pianon ääneen liittyviä ilmiöitä Pianon äänen synteesi Ääniesimerkkejä Akustiikan ja äänenkäsittelytekniikan

Lisätiedot

Digitaalitekniikan matematiikka Luku 13 Sivu 1 (10) Virheen havaitseminen ja korjaus

Digitaalitekniikan matematiikka Luku 13 Sivu 1 (10) Virheen havaitseminen ja korjaus Digitaalitekniikan matematiikka Luku 13 Sivu 1 (10) Digitaalitekniikan matematiikka Luku 13 Sivu 2 (10) Johdanto Tässä luvussa esitetään virheen havaitsevien ja korjaavien koodaustapojen perusteet ja käyttösovelluksia

Lisätiedot

AD/DA muunnos Lähteet: Pohlman. (1995). Principles of digital audio (3rd ed). Zölzer. (1997). Digital audio signal processing

AD/DA muunnos Lähteet: Pohlman. (1995). Principles of digital audio (3rd ed). Zölzer. (1997). Digital audio signal processing AD/DA muunnos Lähteet: Pohlman. (1995). Principles of digital audio (3rd ed). Zölzer. (1997). Digital audio signal processing Sisältö: Näytteistys, laskostuminen Kvantisointi, kvantisointivirhe, kvantisointisärö,

Lisätiedot

Pörisevä tietokone. morsetusta äänikortilla ja mikrofonilla

Pörisevä tietokone. morsetusta äänikortilla ja mikrofonilla Pörisevä tietokone morsetusta äänikortilla ja mikrofonilla 1 Tiivistelmä Idea toteuttaa seuraavat vaatimukset: 1. kommunikointi toisen opiskelijan kanssa (morsetus) 2. toisen opiskelijan häirintä (keskittymistä

Lisätiedot

Algoritmit 2. Luento 10 To Timo Männikkö

Algoritmit 2. Luento 10 To Timo Männikkö Algoritmit 2 Luento 10 To 11.4.2019 Timo Männikkö Luento 10 Merkkitiedon tiivistäminen LZW-menetelmä Taulukointi Editointietäisyys Peruutusmenetelmä Osajoukon summa Algoritmit 2 Kevät 2019 Luento 10 To

Lisätiedot

Ohjelmistoradio tehtävät 4. P1: Ekvalisointi ja demodulaatio. OFDM-symbolien generoiminen

Ohjelmistoradio tehtävät 4. P1: Ekvalisointi ja demodulaatio. OFDM-symbolien generoiminen Ohjelmistoradio tehtävät 4 P: Ekvalisointi ja demodulaatio Tässä tehtävässä dekoodata OFDM data joka on sijotetty synknonontisignaalin lälkeen. Synkronointisignaali on sama kuin edellisessä laskutehtävässä.

Lisätiedot

LOPPURAPORTTI 19.11.2007. Lämpötilahälytin. 0278116 Hans Baumgartner xxxxxxx nimi nimi

LOPPURAPORTTI 19.11.2007. Lämpötilahälytin. 0278116 Hans Baumgartner xxxxxxx nimi nimi LOPPURAPORTTI 19.11.2007 Lämpötilahälytin 0278116 Hans Baumgartner xxxxxxx nimi nimi KÄYTETYT MERKINNÄT JA LYHENTEET... 3 JOHDANTO... 4 1. ESISELOSTUS... 5 1.1 Diodi anturina... 5 1.2 Lämpötilan ilmaisu...

Lisätiedot

Digitaalinen tiedonsiirto ja siirtotiet. OSI-kerrokset

Digitaalinen tiedonsiirto ja siirtotiet. OSI-kerrokset A! Aalto University Comnet ELEC-C7230 Tietoliikenteen siirtomenetelmät, Luento 1 Digitaalinen tiedonsiirto ja siirtotiet Olav Tirkkonen [Luku 1: Introduction, kokonaisuudessaan] A! OSI-kerrokset Tiedonsiirtojärjestelmiä

Lisätiedot

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 7: Pienimmän neliösumman menetelmä ja Newtonin menetelmä.

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 7: Pienimmän neliösumman menetelmä ja Newtonin menetelmä. MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 7: Pienimmän neliösumman menetelmä ja Newtonin menetelmä. Antti Rasila Matematiikan ja systeemianalyysin laitos Aalto-yliopisto Kevät 2016

Lisätiedot

11. kierros. 1. Lähipäivä

11. kierros. 1. Lähipäivä 11. kierros 1. Lähipäivä Viikon aihe AD/DA-muuntimet Signaalin digitalisointi Kvantisointivirhe Kvantisointikohina Kytkinkapasitanssipiirit Mitoitus Kontaktiopetusta: 6 tuntia Kotitehtäviä: 4 tuntia Tavoitteet:

Lisätiedot

Matematiikan tukikurssi

Matematiikan tukikurssi Matematiikan tukikurssi Kurssikerta 4 Jatkuvuus Jatkuvan funktion määritelmä Tarkastellaan funktiota f x) jossakin tietyssä pisteessä x 0. Tämä funktio on tässä pisteessä joko jatkuva tai epäjatkuva. Jatkuvuuden

Lisätiedot

1 Vastaa seuraaviin. b) Taajuusvasteen

1 Vastaa seuraaviin. b) Taajuusvasteen Vastaa seuraaviin a) Miten määritetään digitaalisen suodattimen taajuusvaste sekä amplitudi- ja vaihespektri? Tässä riittää sanallinen kuvaus. b) Miten viivästys vaikuttaa signaalin amplitudi- ja vaihespektriin?

Lisätiedot

Dynaamisten systeemien identifiointi 1/2

Dynaamisten systeemien identifiointi 1/2 Dynaamisten systeemien identifiointi 1/2 Mallin rakentaminen mittausten avulla Epäparametriset menetelmät: tuloksena malli, joka ei perustu parametreille impulssi-, askel- tai taajusvaste siirtofunktion

Lisätiedot

Kanavointi ja PCM järjestelmä

Kanavointi ja PCM järjestelmä Kanavointi ja PCM järjestelmä Kanavointi PCM ~ Pulse Code Modulation ƒ Näytteenotto ƒ Kvantisointi y Lineaarinen y Epälineaarinen ƒ Kvantisointisärö TDM-kanavointi ƒ PCM 0, PCM 0, PCM 80, PCM 90 Rka/ML

Lisätiedot

TL5503 DSK, laboraatiot (1.5 op) Kuvasignaalit. Jyrki Laitinen

TL5503 DSK, laboraatiot (1.5 op) Kuvasignaalit. Jyrki Laitinen TL553 DSK, laboraatiot (.5 op) Kuvasignaalit Jyrki Laitinen TL553 DSK, laboraatiot (.5 op), K25 Suorita oheisten ohjeiden mukaiset tehtävät Matlab- ja VCDemo-ohjelmistoja käyttäen. Kokoa erilliseen mittauspöytäkirjaan

Lisätiedot

6.8 Erityisfunktioiden sovelluksia

6.8 Erityisfunktioiden sovelluksia 6.8 Erityisfunktioiden sovelluksia Tässä luvussa esitellään muutama esimerkki, joissa käytetään hyväksi eksponentti-, logaritmi- sekä trigonometrisia funktioita. Ensimmäinen esimerkki juontaa juurensa

Lisätiedot

Algebralliset menetelmät virheenkorjauskoodin tunnistamisessa

Algebralliset menetelmät virheenkorjauskoodin tunnistamisessa Algebralliset menetelmät virheenkorjauskoodin tunnistamisessa Jyrki Lahtonen, Anni Hakanen, Taneli Lehtilä, Toni Hotanen, Teemu Pirttimäki, Antti Peltola Turun yliopisto MATINE-tutkimusseminaari, 16.11.2017

Lisätiedot

Säätötekniikan matematiikan verkkokurssi, Matlab tehtäviä ja vastauksia 29.7.2002

Säätötekniikan matematiikan verkkokurssi, Matlab tehtäviä ja vastauksia 29.7.2002 Matlab tehtäviä 1. Muodosta seuraavasta differentiaaliyhtälöstä siirtofuntio. Tämä differentiaaliyhtälö saattaisi kuvata esimerkiksi yksinkertaista vaimennettua jousi-massa systeemiä, johon on liitetty

Lisätiedot

Inversio-ongelmien laskennallinen peruskurssi Luento 4

Inversio-ongelmien laskennallinen peruskurssi Luento 4 Inversio-ongelmien laskennallinen peruskurssi Luento 4 Kevät 20 Regularisointi Eräs keino yrittää ratkaista (likimääräisesti) huonosti asetettuja ongelmia on regularisaatio. Regularisoinnissa ongelmaa

Lisätiedot

6. Analogisen signaalin liittäminen mikroprosessoriin 2 6.1 Näytteenotto analogisesta signaalista 2 6.2. DA-muuntimet 4

6. Analogisen signaalin liittäminen mikroprosessoriin 2 6.1 Näytteenotto analogisesta signaalista 2 6.2. DA-muuntimet 4 Datamuuntimet 1 Pekka antala 19.11.2012 Datamuuntimet 6. Analogisen signaalin liittäminen mikroprosessoriin 2 6.1 Näytteenotto analogisesta signaalista 2 6.2. DA-muuntimet 4 7. AD-muuntimet 5 7.1 Analoginen

Lisätiedot

S-114.3812 Laskennallinen Neurotiede

S-114.3812 Laskennallinen Neurotiede S-114.3812 Laskennallinen Neurotiede Laskuharjoitus 2 4.12.2006 Heikki Hyyti 60451P Tehtävä 1 Tehtävässä 1 piti tehdä lineaarista suodatusta kuvalle. Lähtötietoina käytettiin kuvassa 1 näkyvää harmaasävyistä

Lisätiedot

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti

SGN-1200 Signaalinkäsittelyn menetelmät, Tentti SG-1200 Signaalinkäsittelyn menetelmät, Tentti 30.1.2006 Kirjoita nimesi ja opiskelijanumerosi jokaiseen paperiin. Vastauspaperit tullaan irrottamaan toisistaan. Jos tila ei riitä, jatka kääntöpuolelle

Lisätiedot

Luku- ja merkkikoodit. Digitaalitekniikan matematiikka Luku 12 Sivu 1 (15)

Luku- ja merkkikoodit. Digitaalitekniikan matematiikka Luku 12 Sivu 1 (15) Digitaalitekniikan matematiikka Luku 12 Sivu 1 (15) A = a = i i w i Digitaalitekniikan matematiikka Luku 12 Sivu 2 (15) Johdanto Tässä luvussa esitetään kymmenjärjestelmän lukujen eli BCD-lukujen esitystapoja

Lisätiedot

Signaalinkäsittelyn sovellukset

Signaalinkäsittelyn sovellukset Signaalinkäsittelyn laitos. Opetusmoniste 26: Institute of Signal Processing. Lecture Notes 26: Heikki Huttunen Signaalinkäsittelyn sovellukset Tampere 26 Tampereen teknillinen yliopisto. Signaalinkäsittelyn

Lisätiedot

Numeeriset menetelmät

Numeeriset menetelmät Numeeriset menetelmät Luento 13 Ti 18.10.2011 Timo Männikkö Numeeriset menetelmät Syksy 2011 Luento 13 Ti 18.10.2011 p. 1/43 p. 1/43 Nopeat Fourier-muunnokset Fourier-sarja: Jaksollisen funktion esitys

Lisätiedot

Spektri- ja signaalianalysaattorit

Spektri- ja signaalianalysaattorit Spektri- ja signaalianalysaattorit Pyyhkäisevät spektrianalysaattorit Suora pyyhkäisevä Superheterodyne Reaaliaika-analysaattorit Suora analoginen analysaattori FFT-spektrianalysaattori DFT FFT Analysaattoreiden

Lisätiedot