keskiviikko 25. marraskuuta 2009

Epälineaarinen suodatus ja tilastollinen signaalinkäsittely

Päivän aihe oli epälineaarinen signaalinkäsittely (kappale 7), jonka lisäksi tutkailtiin varovasti tilastollisen signaalinkäsittelyn aihepiiriä. Epälineaariset suotimet saattavat tarjota vaihtoehdon lineaarisille suotimille (FIR ja IIR) silloin kun häiriö ja signaali sijaitsevat samalla taajuusalueella. Klassisin epälineaarinen suodin on mediaanisuodin, jonka ulostulo on suuruusjärjestyksessä keskimmäinen ikkunan sisällä olevista arvoista. Tätä vertailtiin demossa lineaarisen suotimen kanssa sekä äänen että kuvan suodatuksessa. Lopuksi tarkasteltiin vielä suotimen robustisuusmittoja, ja erityisesti murtumapistettä.

Viimeisen 15 minuutin aikana luotiin katsaus tilastolliseen signaalinkäsittelyyn ja erityisesti parametrien estimointiin. Ideana on luoda malli signaalista, joka riippuu tietyistä parametreista. Ongelmana on tämän jälkeen kehittää menetelmä näiden parametrien valintaan mitatun datan perusteella. Esimerkkinä voisi olla signaali, jonka tiedetään olevan sinimuotoinen, mutta amplitudi, vaihe sekä taajuus eivät ole tiedossa. Tähän ongelmaan on olemassa estimaattori, joka arvioi optimaalisesti kohinaisesta datasta näitä kolmea parametria.

Seuraavaksi vilkaistiin esimerkkiä käytännön elämästä, jossa erään järjestelmän tilasta voidaan tehdä mittaus, jonka perusteella halutaan säätää järjestelmän erästä toista parametria. Käsin mittaamalla voidaan kehittää opetusaineisto "hyvistä" kombinaatioista (xk, yk), k = 1,2,...,N. Nämä ovat siis käsin mitattuja arvoja: kun mittaus on xk, kannattaa säätöruuvin olla asennossa yk. Näiden perusteella halutaan laskea funktio y = f(x), jolla voidaan ennustaa hyvä lukuarvo y:lle myös kun x ei ole mikään käsin mitatuista. Tätä varten muodostetaan ns. havaintomatriisi (observation matrix), jossa on mukana ne funktiot, joista f pystytään toivottavasti koostamaan. Esimerkiksi seuraavat rivit laskevat parhaan toisen asteen polynomin arvioimaan xk:n ja yk:n välistä riippuvuutta:

x = [1,2,3,4,5,6,7,8];
y = [18,15,12,11,11,11,13,16];
H = [ones(8,1), x, x.^2];

t = inv(H'*H)*H'*y;


Tuloksena saadaan vektoriksi t = [22.5893, -4.9821, 0.5179]T, eli paras toisen asteen relaatio vektoreiden x ja y välille on y = 22.5893 - 4.9821 * x + 0.5179 * x2. Menetelmä on ns. pienimmän neliösumman estimaatti, jonka Gauss keksi jo 18-vuotiaana pohdiskellessaan mallia Ceres-kääpiöplaneetan radalle.

Viimeisen 15 minuutin tavoitteena oli osin antaa rehellinen kuva signaalinkäsittelyn oppiaineesta: aihe vaatii matematiikan osaamista (tai ainakaan kaavoja ei saa pelätä). Toisaalta matematiikkaa pelkäämättömälle aihe tarjoaa hienon mahdollisuuden toteuttaa itseään mielenkiintoisten sovellusten parissa. Kriittisiä taitoja signaalinkäsittelijälle on mm. ohjelmointitaito, koska menetelmät miltei aina tullaan toteuttamaan ohjelmiston osana. Näin ollen ilman ohjelmointitaitoa ei kannata valmistua signaalinkäsittely pääaineenaan.

Ei kommentteja:

Lähetä kommentti