Tänään luennon aluksi vilkaistiin välikoetta sekä sen tuloksia.
Tämän jälkeen käsiteltiin alku kappaleesta "näytteenottotaajuuden muuntelu".
Kappale tarkastelee menetelmiä, joilla voidaan muuntaa
näytteenottotaajuus näytteistämisen jälkeen toiseksi. Perusoperaatiot
ovat desimointi ja interpolointi,
jotka toimivat kokonaislukukertoimilla. Näitä yhdistelemällä saadaan
kaikki rationaalikertoimet. Molemmat operaatiot tarvitsevat
alipäästösuodattimen, joka on yleensä FIR, ja suunnitellaan normaaleilla
menetelmillä. Suotimen siirtymäkaistasta todettiin, että se laitetaan
aina rajataajuuden alapuolelle. Näin signaaliin tulee vähemmän virhettä
kuin jos laskostumista pääsisi tapahtumaan.
Desimoinnissa
tapahtuva näytteenottotaajuuden pieneminen toteutetaan yksinkertaisesti
jättämällä näytteitä pois tasaisin väliajoin. Esimerkiksi kertoimella
kolme jätetään vain joka kolmas näyte jäljelle. Tämä kuitenkin aiheuttaa
laskostumista, koska signaalin sisältämät taajuudet pysyvät samoina
mutta näytteenottotaajuus pienenee. Tämä saadaan luonnollisesti estettyä
suodattamalla signaali ennen alinäytteistämistä sopivalla
alipäästösuotimella.
Interpolointi puolestaan koostuu nollien
lisäämisestä sekä tämän operaation tuottamien roskien poistamisesta.
Nollien lisääminenhän tuottaa kopioita ja peilikuvia alkuperäisestä
spektristä, jotka voidaan myös poistaa kätevästi alipäästösuodatuksella.
Kappaleessa luodaan myös katsaus interpoloinnin ja desimoinnin yhdistämiseen,
jolloin päästään yksinkertaisempaan rakenteeseen huomaamalla kokonaisuudessa olevan
kaksi suodatinta peräkkäin, jotka molemmat poistavat tietyn kaistan
ylätaajuuksilta. Näin ollen vain toinen niistä on tarpeellinen.
Piirtämällä kuva näiden suodinten amplitudivasteista voidaan päätellä
kumpi on tarpeeton (aina se, jota vastaava muunnoskerroin on isompi).
keskiviikko 26. maaliskuuta 2014
keskiviikko 19. maaliskuuta 2014
Äärellinen sanapituus
Tänään luento aloitettiin pikaisella ekskursiolla erääseen kuvankäsittelyongelmaan. Esimerkki perustui muutama vuosi sitten toteutettuun tutkimushankkeeseen, jossa tavoitteena oli löytää pienhiukkasia SEM-mikroskoopin kuvista. Demottu menetelmä korosti ensin mielenkiintoiset hiukkaset muotoon perustuvalla morfologisella tophat-muunnoksella, jonka jälkeen hiukkaset etsittiin Otsun kynnystyksellä. Löydetyistä kohteista karsittiin liian pienet pois Matlabin bwareaopen-funktiolla, ja lopuksi laskettiin jäljelle jääneiden kohteiden kokojakauma labeling-algoritmilla.
Kuva-analyysidemon jälkeen palattiin prujun aiheeseen. Muistelimme äärellisen sananpituuden vaikutusta A/D-muunnoksessa, ja osoitettiin että kvantisointikohinan odotusarvo on nolla ja varianssin yhtä kuin 2^(-2b) / 12.
Yllä olevaa kaavaa voidaan edelleen jalostaa signaali-kohinasuhteen käsitteeksi (SNR), joka kertoo signaalin tehon suhteessa kohinan tehoon. Kun kaavaa pyöriteltiin, havaittiin jokaisen ylimääräisen bitin (per näyte) nostavan SNR:ää kuudella bitillä.
Lopuksi johdettiin kaava varianssille suodatuksen jälkeen ja sekä tutkittiin suotimen kertoimien pyöristämisen vaikutusta. Tämähän täytyy tehdä aina kun suodin toteutetaan huonomman tarkkuuden alustalla kuin Matlab (esim. tällä 17-bitin DSP:llä).
Toisen tunnin lopuksi käsiteltiin alku kappaleesta "näytteenottotaajuuden muuntelu". Kappale tarkastelee menetelmiä, joilla voidaan muuntaa näytteenottotaajuus näytteistämisen jälkeen toiseksi. Perusoperaatiot ovat desimointi ja interpolointi, jotka toimivat kokonaislukukertoimilla. Näitä yhdistelemällä saadaan kaikki rationaalikertoimet. Molemmat operaatiot tarvitsevat alipäästösuodattimen, joka on yleensä FIR, ja suunnitellaan normaaleilla menetelmillä.
Kuva-analyysidemon jälkeen palattiin prujun aiheeseen. Muistelimme äärellisen sananpituuden vaikutusta A/D-muunnoksessa, ja osoitettiin että kvantisointikohinan odotusarvo on nolla ja varianssin yhtä kuin 2^(-2b) / 12.
Yllä olevaa kaavaa voidaan edelleen jalostaa signaali-kohinasuhteen käsitteeksi (SNR), joka kertoo signaalin tehon suhteessa kohinan tehoon. Kun kaavaa pyöriteltiin, havaittiin jokaisen ylimääräisen bitin (per näyte) nostavan SNR:ää kuudella bitillä.
Lopuksi johdettiin kaava varianssille suodatuksen jälkeen ja sekä tutkittiin suotimen kertoimien pyöristämisen vaikutusta. Tämähän täytyy tehdä aina kun suodin toteutetaan huonomman tarkkuuden alustalla kuin Matlab (esim. tällä 17-bitin DSP:llä).
Toisen tunnin lopuksi käsiteltiin alku kappaleesta "näytteenottotaajuuden muuntelu". Kappale tarkastelee menetelmiä, joilla voidaan muuntaa näytteenottotaajuus näytteistämisen jälkeen toiseksi. Perusoperaatiot ovat desimointi ja interpolointi, jotka toimivat kokonaislukukertoimilla. Näitä yhdistelemällä saadaan kaikki rationaalikertoimet. Molemmat operaatiot tarvitsevat alipäästösuodattimen, joka on yleensä FIR, ja suunnitellaan normaaleilla menetelmillä.
keskiviikko 12. maaliskuuta 2014
IIR-suodinten suunnittelu ja kvantisointi
Tänään luennon ensimmäisellä tunnilla tutkittiin Matlabin valmiita IIR-suodattimen
suunnittelumenetelmiä.
Tässä yhteydessä muisteltiin ns. pole-zero-placement -suunnittelumenetelmää, jossa hiirellä sijoiteltiin napoja ja nollia yksikköympyrälle ja laskettiin näitä vastaava suodin. Alla olevassa kuvassa on eräs näin saatu napanollakuvio, jossa tavoitellaan alipäästösuodinta. Tätä vastaava amplitudivaste on seuraavassa kuvassa, jossa selvästi erottuu hyppäys ylös- tai alaspäin jokaisen lähellä kehää olevan navan tai nollan kohdalla. Alimmassa kuvassa on vielä esitetty siirtofunktion itseisarvo |H(z)|, josta saadaan keskimmäinen amplitudivasteen |H(exp(iw))| kuvaaja sijoittamalla exp(iw) lausekkeessa z:n tilalle.
Edellä
kuvattu menetelmä ei luonnollisestikaan ole kovin tarkka.
Toisen tunnin aihe olikin täsmällisempi IIR-suodinten suunnittelu, joka käytiin melko yleisellä Matlab-komentojen osaamisen tasolla. Kappaleen ydin on koottu monisteen taulukkoon, jossa suodintyyppejä vertaillaan amplitudivasteen ominaisuuksien ja kertoimien määrän suhteen. Kertoimia tarvitaan eri menetelmillä 29+28, 13+12 ja 8+7 kappaletta. Suurin määrä tulee Butterworth-suotimella ja pienin elliptisellä suotimella. Kahden Chebyshev-suotimen kerroinmäärä on näiden kahden ääripään välissä. Vertailun vuoksi FIR-suotimen kertoimien määrä vastaavilla vaatimuksilla olisi N = [5.5/0.035] = 159 käytettäessä Blackman-ikkunaa.
Muita luennolla esiin tulleita seikkoja olivat mm.
Toisella tunnilla käsiteltiin äärellisen sananpituuden vaikutuksia. Meidän tarkastelussamme nämä ilmenevät A/D-muunnoksen yhteydessä sekä suodatettaessa äärellisellä laskentatarkkuudella. Pääpaino on ensimmäisessä tyypissä. Luennolla käsiteltiin näytteistyksessä käytettävät kvantisointitasot: esimerkiksi (1+7) bitin esityksessä käytettävissä ovat seuraavat 256 tasoa: -128/128, -127/128, ..., 0, ..., 126/128, 127/128.
Pyöristettäessä
lähimpään lukuun syntyvä kvantisointivirhe on aina välillä
-1/256...1/256. Yleisesti pyöristys (1+b) bittiin aiheuttaa enintään
virheen 2^(-b) / 2 suuntaan tai toiseen. Vasemmalla olevassa kuvassa on
esimerkkitapaus jossa "seiska" kvantisoidaan 1+9 bittiin.
Seuraavaksi tätä yksinkertaista virhemallia käytettiin johdettaessa arvio virheen varianssille, joka on suoraan verrannollinen syntyvän kvantisointivirheen tehoon. Tätä kautta määritellään SNR, eli signaali-kohinasuhde, eli häiriöetäisyys. Tämä suure kertoo jotain äänenlaadusta, ja saatavia tuloksia tullaan tarvitsemaan kappaleessa 6, kun päätellään montako bittiä signaalista uskalletaan poistaa kompressiossa ilman äänenlaadun havaittavaa heikkenemistä.
Jos ehtojen oletetaan olevan voimassa, voidaan osoittaa kohinan odotusarvon olevan nolla ja varianssin yhtä kuin 2^(-2b) / 12.
Tässä yhteydessä muisteltiin ns. pole-zero-placement -suunnittelumenetelmää, jossa hiirellä sijoiteltiin napoja ja nollia yksikköympyrälle ja laskettiin näitä vastaava suodin. Alla olevassa kuvassa on eräs näin saatu napanollakuvio, jossa tavoitellaan alipäästösuodinta. Tätä vastaava amplitudivaste on seuraavassa kuvassa, jossa selvästi erottuu hyppäys ylös- tai alaspäin jokaisen lähellä kehää olevan navan tai nollan kohdalla. Alimmassa kuvassa on vielä esitetty siirtofunktion itseisarvo |H(z)|, josta saadaan keskimmäinen amplitudivasteen |H(exp(iw))| kuvaaja sijoittamalla exp(iw) lausekkeessa z:n tilalle.
Edellä
kuvattu menetelmä ei luonnollisestikaan ole kovin tarkka. Toisen tunnin aihe olikin täsmällisempi IIR-suodinten suunnittelu, joka käytiin melko yleisellä Matlab-komentojen osaamisen tasolla. Kappaleen ydin on koottu monisteen taulukkoon, jossa suodintyyppejä vertaillaan amplitudivasteen ominaisuuksien ja kertoimien määrän suhteen. Kertoimia tarvitaan eri menetelmillä 29+28, 13+12 ja 8+7 kappaletta. Suurin määrä tulee Butterworth-suotimella ja pienin elliptisellä suotimella. Kahden Chebyshev-suotimen kerroinmäärä on näiden kahden ääripään välissä. Vertailun vuoksi FIR-suotimen kertoimien määrä vastaavilla vaatimuksilla olisi N = [5.5/0.035] = 159 käytettäessä Blackman-ikkunaa.
Muita luennolla esiin tulleita seikkoja olivat mm.
- Matlabin kerroinvektorit a ja b eivät ole suoraan käytettävissä ulostulon y(n) laskennassa, vaan takaisinkytkentäkertoimien (siis esim. termin y(n-1) kertoimen) merkki täytyy vaihtaa vastakkaiseksi.
- Elliptisellä suotimella on aina vähemmän kertoimia kuin muilla. Lisäksi tasavärähtely-ominaisuus on yleensä hyvä asia.
Toisella tunnilla käsiteltiin äärellisen sananpituuden vaikutuksia. Meidän tarkastelussamme nämä ilmenevät A/D-muunnoksen yhteydessä sekä suodatettaessa äärellisellä laskentatarkkuudella. Pääpaino on ensimmäisessä tyypissä. Luennolla käsiteltiin näytteistyksessä käytettävät kvantisointitasot: esimerkiksi (1+7) bitin esityksessä käytettävissä ovat seuraavat 256 tasoa: -128/128, -127/128, ..., 0, ..., 126/128, 127/128.
Pyöristettäessä
lähimpään lukuun syntyvä kvantisointivirhe on aina välillä
-1/256...1/256. Yleisesti pyöristys (1+b) bittiin aiheuttaa enintään
virheen 2^(-b) / 2 suuntaan tai toiseen. Vasemmalla olevassa kuvassa on
esimerkkitapaus jossa "seiska" kvantisoidaan 1+9 bittiin.Seuraavaksi tätä yksinkertaista virhemallia käytettiin johdettaessa arvio virheen varianssille, joka on suoraan verrannollinen syntyvän kvantisointivirheen tehoon. Tätä kautta määritellään SNR, eli signaali-kohinasuhde, eli häiriöetäisyys. Tämä suure kertoo jotain äänenlaadusta, ja saatavia tuloksia tullaan tarvitsemaan kappaleessa 6, kun päätellään montako bittiä signaalista uskalletaan poistaa kompressiossa ilman äänenlaadun havaittavaa heikkenemistä.
Jos ehtojen oletetaan olevan voimassa, voidaan osoittaa kohinan odotusarvon olevan nolla ja varianssin yhtä kuin 2^(-2b) / 12.
Tilaa:
Kommentit (Atom)