vectorized bewegende gemiddelde y filter (1 / 10ones (1, 10), 1, x) Dit veronderstel dat die waardes op negatiewe tyd (x (0), x (-1), ens) is almal nul. So, byvoorbeeld, die eerste waarde van y sou wees x (1) / 10. Op Vrydag, 7 Mei 2010 om 15:33, Tim Rueth lthidden e GT het geskryf: Ek het gekyk na beide conv () en filter (), maar can39t uit te vind hoe om 'n bewegende gemiddelde daarmee te doen. Miskien I39m nie die begrip van die funksies van die insette korrek Vars. Let39s sê ek het 'n skikking, 'n rand (1100). Kan jy my vertel hoe I39d gebruik conv () en filter () oor te neem, sê die 10-dae - bewegende gemiddelde daarvan, met 'n gewig van 0,5 GT ----- Original Message ----- GT From: Andy Buckle mailto: verborge e-pos GT gestuur: Donderdag 6 Mei, 2010 12:06 GT Aan: verborge e-pos GT Cc: verborge e-pos GT Onderwerp: Re: vectorized bewegende gemiddelde GT GT conv is ook 'n m lêer, maar dit het slegs 'n paar IFS in. dan is dit GT oproepe filter om die werk te doen. wat is 'n Oktober lêer. GT GT Andy GT GT Op Do 6 Mei 2010 om 06:28, Tim Rueth lthidden e GT geskryf: GT GT Is daar iemand weet hoe om 'n N-dag geweeg bewegende gemiddelde van 'n GT GT vektor neem sonder om 'n vir - lus ek gekyk na die M-kode GT vir movavg () gt gt en dit gebruik 'n vir-lus, sodat I39m vermoed daar waarskynlik isn39t n manier, GT GT maar ek het gedink I39d tjek. Dankie. GT GT GT GT --Tim GT GT GT GT Hulp-oktaaf poslys GT GT verborge e-pos GT GT www-old. cae. wisc. edu/mailman/listinfo/help-octave GT GT GT GT GT GT GT GT - GT / Andy gespe / GT Dankie vir wys hoe om filter () te gebruik om 'n eenvoudige bewegende gemiddelde doen. Ek geïmplementeer jou kode, en dit is dit eens met movavg (x, 10,10,0), wat 'n 10-dag eenvoudig bewegende gemiddelde bereken. Theres net 'n verskil in die eerste 9 getalle as gevolg van veronderstelde waardes van negatiewe tyd (movavg bereken 'n run-in periode). Soos u sal onthou, Im probeer filter () gebruik om movavg vermy () s vir-lus. Nou, wat Im probeer om te doen is 'n geweegde bewegende gemiddelde, identies aan die alfa parameter van movavg (). Wanneer alpha0, sy 'n eenvoudige bewegende gemiddelde, en stem saam met filter (). As ek alfa tot 1 verander, Im veronderstel om 'n lineêre MA kry. Hier is die kode in movavg. m dat die gewig nie (lood is die aantal dae tot gemiddeld gelykstaande aan 10 in die bogenoemde geval): lei (1: lei).alpha die gewigte Eers na ewenaar 1 lood lei / som (lood ) So, vir 'n 10-dag lineêr-geweegde bewegende gemiddelde (lei 10, Alpha 1). 1/55, 2/55, 3/55: die vorige 9 dae en huidige dag moet soos volg geweeg. 10/55, met die grootste gewig (10/55) toegepas op die huidige dag. So, probeer ek 'n eenvoudige toets geval met net 'n 2-dag MA op 'n 6-element vektor. madays 2 alfa 1 Len 6 'n rand (1. Len) Bereken MA met behulp movavg () ma movavg (a, madays, madays, Alpha) Bereken MA met behulp filter () sweep (1: madays).alpha normsweep sweep / som (sweep ) f filter (normsweep, 1, a) D ie movavg () en filter () resultate is soortgelyk, maar nie reg nie. Im raai ek hoef nie die argumente vir 'n filter () korrek is, maar ek kan nie uitvind wat ek verkeerd gedoen het. Veral, Ek is nie seker wat die tweede argument van filter () is veronderstel om te doen. Hulp Ek is nie seker wat jy bedoel met gewig van 0,5, maar om 'n eenvoudige 10-dag gemiddeld doen, IVD y filter (1 / 10ones (1, 10), 1, x) Dit veronderstel dat die waardes op negatiewe tyd (x (0), x (-1), ens) is almal nul. So, byvoorbeeld, die eerste waarde van y sou wees x (1) / 10. Op Vrydag, 7 Mei 2010 om 15:33, Tim Rueth lthidden e GT het geskryf: Ek het gekyk na beide conv () en filter (), maar kan nie uitvind hoe om 'n bewegende gemiddelde daarmee te doen. Miskien Im nie die begrip van die funksies van die insette korrek Vars. Kom ons sê ek het 'n skikking, 'n rand (1100). Kan jy my vertel hoe id gebruik conv () en filter () oor te neem, sê die 10-dae - bewegende gemiddelde daarvan, met 'n gewig van 0,5 GT ----- Original Message ----- GT From: Andy Buckle mailto: verborge e-pos GT gestuur: Donderdag 6 Mei, 2010 12:06 GT Aan: verborge e-pos GT Cc: verborge e-pos GT Onderwerp: Re: vectorized bewegende gemiddelde GT GT conv is ook 'n m lêer, maar dit het slegs 'n paar IFS in. dan is dit GT oproepe filter om die werk te doen. wat is 'n Oktober lêer. GT GT Andy GT GT Op Do 6 Mei 2010 om 06:28, Tim Rueth lthidden e GT geskryf: GT GT Is daar iemand weet hoe om 'n N-dag geweeg bewegende gemiddelde van 'n GT GT vektor neem sonder om 'n vir - lus ek gekyk na die M-kode GT vir movavg () gt gt en dit gebruik 'n vir-lus, sodat Im vermoed daar waarskynlik is nie 'n manier, GT GT maar ek het gedink id tjek. Dankie. GT GT GT GT --Tim GT GT GT GT Hulp-oktaaf poslys GT GT verborge e-pos GT GT www-old. cae. wisc. edu/mailman/listinfo/help-octave GT GT GT GT GT GT GT GT - GT / Andy gespe / GT gtYour filter kode hieronder werk net mooi wanneer dit vergelyk word met wat ek het gtdoing, behalwe vir 'n paar aanvanklike dae, as gevolg van watter waardes word aanvaar dat GTIN negatiewe tyd. Ek het al met behulp van die volgende kode: GT GT quotndaysquot is die aantal dae wat gebruik word wanneer die berekening van die eksponensiële gtmoving gemiddeld van quotdataquot (data is 'n kolomvektor) GT data repmat (data (1), ndays, 1) data herhaling data (1) ndays keer by gtthe begin van data vir negatiewe tydwaardes GT alfa 2 / (ndays1) GT N lengte (data) GT avg nulle (N, 1) GT avg (1) data (1) bogenoemde opdrag is al wat jy moet afgelope geheue quotinventquot vir negatiewe waardes. Jy moet dieselfde vir die filter funksie doen, maar ek kon nie sê hoe om te doen dit onvoorbereid. GT want Ek 2. N GT oa avg (i-1) GT avg (i) oa alfa. (data (i) - oa) GT endfor GT GT Sny aanloop in tydperk vir negatiewe tyd waardes GT Longma Longma (lmadays1 einde ) Ek dont verstaan die bogenoemde opdrag. Wat is Longma gtFor klein waardes van ndays, die getal van die aanvanklike dae waar Theres 'n gtdiscrepancy met jou filter () implementering is minimaal, maar vir 'n groter gtvalues van ndays, die getal van die aanvanklike dae van teenstrydigheid groei (natuurlik, gtdue om die aard van 'n eksponensiële MA met 'n lang stert geheue). Let ek gtadd soortgelyke negatiewe tyd waardes aan die voorkant van die vektor by die gebruik van gtfilter () sowel. Im net nie seker wat is die konvensie wanneer dit kom by eksponensiële bewegende gemiddeldes vir punte gtcalculating in quotdataquot waar quotndaysquot terug in negatiewe tyd gtreaches. Weereens dankie. - Francesco Potort (ricercatore) Voice: 39 050 315 3058 (op.2111) ISTI - Area della ricerca CNR Faks: 39 050 315 2040 via G. Moruzzi 1, I-56124 Pisa E-pos: versteek e-pos (ingang 20, 1ste vloer , kamer C71) Web: fly. isti. cnr. it/ Hulp-oktaaf poslys verborge e-pos www-old. cae. wisc. edu/mailman/listinfo/help-octave Ek can39t dit tans gaan, maar as ek reg onthou, die 4de argument te filter is beginvoorwaardes. So, iets soos as jy jou aanvanklike toestand van die eerste waarde van data wees, ek dink die opdrag sou wees: b alfa n 1, Alpha-1 se filter (b, a, x, x (1)) Dit moet net om een element in hierdie geval, want die enigste aanvanklike toestand wat jy nodig het is s0. Op Do 13 Mei, 2010 om 02:21, Francesco Potort lthidden e GT geskryf: onder gtYour filter kode werk net mooi wanneer dit vergelyk word met wat ek het gtdoing, behalwe vir 'n paar aanvanklike dae, as gevolg van watter waardes word aanvaar GTIN negatiewe tyd. Ek het al met behulp van die volgende kode: GT GT quotndaysquot is die aantal dae wat gebruik word wanneer die berekening van die eksponensiële gtmoving gemiddeld van quotdataquot (data is 'n kolomvektor) GT data repmat (data (1), ndays, 1) data herhaling data (1) ndays keer by gtthe begin van data vir negatiewe tydwaardes GT alfa 2 / (ndays1) GT N lengte (data) GT avg nulle (N, 1) GT avg (1) data (1) bogenoemde opdrag is al wat jy moet afgelope geheue quotinventquot vir negatiewe waardes. Jy moet dieselfde vir die filter funksie doen, maar ek kon nie sê hoe om te doen dit onvoorbereid. GT want Ek 2. N GT oa avg (i-1) GT avg (i) oa alfa. (data (i) - oa) GT endfor GT GT Sny aanloop in tydperk vir negatiewe tyd waardes GT Longma Longma (lmadays1 einde ) Ek don39t verstaan die bogenoemde opdrag. Wat is Longma gtFor klein waardes van ndays, die getal van die aanvanklike dae waar there39s n gtdiscrepancy met jou filter () implementering is minimaal, maar vir 'n groter gtvalues van ndays, die getal van die aanvanklike dae van teenstrydigheid groei (natuurlik, gtdue om die aard van 'n eksponensiële MA met 'n lang stert geheue). Let ek gtadd soortgelyke negatiewe tyd waardes aan die voorkant van die vektor by die gebruik van gtfilter () sowel. I39m net nie seker wat is die konvensie wanneer dit kom by eksponensiële bewegende gemiddeldes vir punte gtcalculating in quotdataquot waar quotndaysquot gtreaches terug in negatiewe tyd. Weereens dankie. - Francesco Potort (ricercatore) Voice: 39 050 315 3058 (op.2111) ISTI - Area della ricerca CNR Faks: 39 050 315 2040 via G. Moruzzi 1, I-56124 Pisa E-pos: versteek e-pos (ingang 20, 1ste vloer , kamer C71) Web: fly. isti. cnr. it/ In antwoord op hierdie pos deur Francesco Potort die laaste opdrag met quotlongmaquot moet gelees:. quotavg avg (N1 einde) quot wat effektief afwerking van die berekende waardes van negatiewe tyd. Maar, soos jy sê, dit lyk asof ek didnt nodig om dit te doen, want die geskiedenis heeltemal vasgevang word in avg (1) data (1), so nie nodig om 'n quotrun-inquot tyd te bereken. Dankie Francesco. Sherman het gevind dat ek die aanvanklike toestand kan ingestel word deur die spesifiseer van 'n 4de parameter in filter () gelyk aan die eerste data punt. Ek het probeer om hierdie, en baie soortgelyk (maar nie heeltemal presiese) resultate in vergelyking met die vir-lus hieronder met geen negatiewe tyd waardes. Maar hierdie klein verskil verkwis binne quotndaysquot en is nie 'n groot deal. Dankie Sherman. Om op te som, die eksponensiële bewegende gemiddelde van quotdataquot bereken vir quotndaysquot, die volgende kode: Alpha 2 / (ndays1) N lengte (data) avg nulle (N, 1) avg (1) data (1) want ek 2. N ao avg (i-1) avg (i) oa alfa (data (i) - oa) endfor is naby, maar nie heeltemal gelyk aan: Alpha 2 / (ndays1) avg filter (Alpha 1 alfa-1, data, data ( 1)) vir ongeveer die eerste ndays van Gem. GT ----- Original Message ----- GT From: Francesco Potort mailto: verborge e-pos GT gestuur: Woensdag, 12 Mei, 2010 23:22 GT Aan: verborge e-pos GT Cc: Octave-ML James Sherman Jr. GT Onderwerp: Re: vectorized bewegende gemiddelde GT GT gtYour filter kode hieronder werk net mooi wanneer dit vergelyk word met wat GT Ek het GT gtdoing was, behalwe vir 'n paar aanvanklike dae, as gevolg van wat waardes GT gtassumed in negatiewe tyd. Ek het al met behulp van die volgende kode: GT GT GT GT quotndaysquot is die aantal dae wat gebruik word wanneer die berekening van die GT gtexponential bewegende gemiddelde van quotdataquot (data word 'n kolom vektor) gt gt data repmat (data (1), ndays, 1 ) data herhaling GT data (1) ndays keer by GT gtthe begin van data vir negatiewe tydwaardes Alpha GT 2 / (ndays1) N GT GT lengte (data) avg nulle (N, 1) gt gt avg (1) data (1 ) gt gt bogenoemde opdrag is al wat jy nodig het om verlede geheue GT quotinventquot vir negatiewe waardes. Jy moet dieselfde vir die filter GT funksie doen, maar ek kon nie sê hoe om te doen dit onvoorbereid. GT GT GT want Ek 2. N GT GT oa avg (i-1) gt gt avg (i) oa alfa (data (i) - oa) endfor GT GT GT GT Sny aanloop in tydperk vir negatiewe tydwaardes GT GT Longma Longma (lmadays1. end) gt gt I dont verstaan die bogenoemde opdrag. Wat is Longma GT GT gtFor klein waardes van ndays, die getal van die aanvanklike dae waar GT Theres 'n GT gtdiscrepancy met jou filter () implementering is minimaal, maar vir GT gtlarger waardes van ndays, die getal van die aanvanklike dae van GT teenstrydigheid groei GT GT (natuurlik, as gevolg van die aard van 'n eksponensiële MA met 'n GT lang stert GT gtmemory). Let Ek voeg soortgelyke negatiewe tyd waardes vir die GT voor die GT gtvector by die gebruik van GT gtfilter () sowel. Im net nie seker wat is die konvensie wanneer dit GT gtcomes om die berekening van eksponensiële bewegende gemiddeldes vir punte GT in quotdataquot waar quotndaysquot GT gtreaches terug in negatiewe tyd. Weereens dankie. GT GT - GT Francesco Potort (ricercatore) Voice: 39 050 315 GT 3058 (op.2111) GT ISTI - Area della ricerca CNR Faks: 39 050 315 2040 GT via G. Moruzzi 1, I-56124 Pisa E-pos: versteek e-pos GT (ingang 20, 1ste vloer, kamer C71) Web: fly. isti. cnr. it/ GT so, hierdie ingeluister my, so ek het 'n bietjie op die filter funksie, en ek dink ek het gevind dat waar die fout was in my eerste voorstel. Die aanvanklike toestand vektor te doen het met die interne state van die filter nie die negatiewe tyd uitgange van die filter (ten minste nie direk), so te kry wat ek dink is presies wat jou kode met die for-lus, moet die filter reël wees : avg filter (Alpha 1 alfa-1, data, data (1) (1-alfa)) dit is eerder unintuitive waarom die 1-alfa termyn moet daar wees, en Ek don39t weet of there39s veel belangstelling in dit, maar dit shouldn39t wees dat harde (waarskynlik Ek het net nodig om te kraak oop my seine en stelsels boek) om 'n funksie te skryf aan die diegene aanvanklike toestande wat die filter funksie verwag dat net gee die uitgange en insette van negatiewe tyd te bereken. Op Do 13 Mei, 2010 om 20:38, Tim Rueth lthidden e GT het geskryf: Die laaste opdrag met quotlongmaquot moet gelees: quotavg avg (N1: einde) quot wat effektief afwerking van die berekende waardes van negatiewe tyd. Maar, soos jy sê, dit lyk asof ek didn39t nodig om dit te doen, want die geskiedenis heeltemal vasgevang word in avg (1) data (1), so nie nodig om 'n quotrun-inquot tyd te bereken. Dankie Francesco. Sherman het gevind dat ek die aanvanklike toestand kan ingestel word deur die spesifiseer van 'n 4de parameter in filter () gelyk aan die eerste data punt. Ek het probeer om hierdie, en baie soortgelyk (maar nie heeltemal presiese) resultate in vergelyking met die vir-lus hieronder met geen negatiewe tyd waardes. Maar hierdie klein verskil verkwis binne quotndaysquot en isn39t 'n groot deal. Dankie Sherman. Om op te som, die eksponensiële bewegende gemiddelde van quotdataquot bereken vir quotndaysquot, die volgende kode: Alpha 2 / (ndays1) N lengte (data) avg nulle (N, 1) avg (1) data (1) want ek 2. N ao avg (i-1) avg (i) oa alfa (data (i) - oa) is naby, maar nie heeltemal gelyk aan: Alpha 2 / (ndays1) avg filter (Alpha 1 alfa-1, data, data (1 )) vir ongeveer die eerste ndays van Gem. GT ----- Original Message ----- GT From: Francesco Potort mailto: verborge e-pos GT gestuur: Woensdag, 12 Mei, 2010 23:22 GT Aan: verborge e-pos GT Cc: 39Octave-ML39 39James Sherman Jr. 39 GT Onderwerp: Re: vectorized bewegende gemiddelde GT GT gtYour filter kode hieronder werk net mooi wanneer dit vergelyk word met wat GT Ek het GT gtdoing was, behalwe vir 'n paar aanvanklike dae, as gevolg van wat waardes GT gtassumed in negatiewe tyd. Ek het al met behulp van die volgende kode: GT GT GT GT quotndaysquot is die aantal dae wat gebruik word wanneer die berekening van die GT gtexponential bewegende gemiddelde van quotdataquot (data word 'n kolom vektor) gt gt data repmat (data (1), ndays, 1 ) data herhaling GT data (1) ndays keer by GT gtthe begin van data vir negatiewe tydwaardes Alpha GT 2 / (ndays1) N GT GT lengte (data) avg nulle (N, 1) gt gt avg (1) data (1 ) gt gt bogenoemde opdrag is al wat jy nodig het om verlede geheue GT quotinventquot vir negatiewe waardes. Jy moet dieselfde vir die filter GT funksie doen, maar ek kon nie sê hoe om te doen dit onvoorbereid. GT GT GT want Ek 2. N GT GT oa avg (i-1) gt gt avg (i) oa alfa (data (i) - oa) endfor GT GT GT GT Sny aanloop in tydperk vir negatiewe tydwaardes GT GT Longma Longma (lmadays1. end) gt gt Ek don39t verstaan die bogenoemde opdrag. Wat is Longma GT GT gtFor klein waardes van ndays, die getal van die aanvanklike dae waar GT there39s n GT gtdiscrepancy met jou filter () implementering is minimaal, maar vir GT gtlarger waardes van ndays, die getal van die aanvanklike dae van GT teenstrydigheid groei GT GT (natuurlik, as gevolg van die aard van 'n eksponensiële MA met 'n GT lang stert GT gtmemory). Let Ek voeg soortgelyke negatiewe tyd waardes vir die GT voor die GT gtvector by die gebruik van GT gtfilter () sowel. I39m net nie seker wat is die konvensie wanneer dit GT gtcomes om die berekening van eksponensiële bewegende gemiddeldes vir punte GT in quotdataquot waar quotndaysquot GT gtreaches terug in negatiewe tyd. Weereens dankie. GT GT - GT Francesco Potort (ricercatore) Voice: 39 050 315 GT 3058 (op.2111) GT ISTI - Area della ricerca CNR Faks: 39 050 315 2040 GT via G. Moruzzi 1, I-56124 Pisa E-pos: versteek e-pos GT (ingang 20, 1ste vloer, kamer C71) Web: fly. isti. cnr. it/ GT so, hierdie ingeluister my, so ek het 'n bietjie op die filter funksie, en ek dink ek het gevind dat waar die fout was in my eerste voorstel. Die aanvanklike toestand vektor te doen het met die interne state van die filter nie die negatiewe tyd uitgange van die filter (ten minste nie direk), so te kry wat ek dink is presies wat jou kode met die for-lus, moet die filter reël wees : avg filter (Alpha 1 alfa-1, data, data (1) (1-alfa)) dit is eerder unintuitive waarom die 1-alfa termyn moet daar wees, en ek weet nie of Theres veel belangstelling in dit, maar dit behoort nie so moeilik (waarskynlik Ek het net nodig om te kraak oop my seine en stelsels boek) om 'n funksie te skryf aan die diegene aanvanklike toestande wat die filter funksie verwag dat net gee die uitgange en insette van negatiewe tyd te bereken. Op Do 13 Mei, 2010 om 20:38, Tim Rueth lthidden e GT het geskryf: Die laaste opdrag met Longma moet gelees: Gem Gem (N1: einde) wat effektief afwerking van die berekende waardes van negatiewe tyd. Maar, soos jy sê, dit lyk asof ek didnt nodig om dit te doen, want die geskiedenis heeltemal vasgevang word in avg (1) data (1), so nie nodig om 'n run-in tyd te bereken. Dankie Francesco. Sherman het gevind dat ek die aanvanklike toestand kan ingestel word deur die spesifiseer van 'n 4de parameter in filter () gelyk aan die eerste data punt. Ek het probeer om hierdie, en baie soortgelyk (maar nie heeltemal presiese) resultate in vergelyking met die vir-lus hieronder met geen negatiewe tyd waardes. Maar hierdie klein verskil verkwis binne ndays en is nie 'n groot deal. Dankie Sherman. Om op te som, die eksponensiële bewegende gemiddelde van data te bereken vir ndays, die volgende kode: Alpha 2 / (ndays1) N lengte (data) avg nulle (N, 1) avg (1) data (1) want ek 2. N ao avg (i-1) avg (i) oa alfa (data (i) - oa) is naby, maar nie heeltemal gelyk aan: Alpha 2 / (ndays1) avg filter (Alpha 1 alfa-1, data, data (1 )) vir ongeveer die eerste ndays van avg. Smoothing in baie eksperimente in die wetenskap, die ware sein amplitudes (y-as waardes) verandering eerder glad as 'n funksie van die x-as waardes, terwyl baie soorte geraas word beskou as 'n vinnige, ewekansige verandering in amplitude van punt tot punt in die sein. In laasgenoemde situasie kan dit nuttig wees in sommige gevalle wees om te probeer om die geraas deur 'n proses genaamd glad verminder. In smoothing, is die data punte van 'n sein verander sodat individuele punte wat hoër as die onmiddellik aangrensende punte (vermoedelik as gevolg van geraas) is verminder, en punte wat laer is as die aangrensende punte verhoog is nie. Dit lei natuurlik tot 'n gladder sein (en 'n stadiger stap reaksie op veranderinge sein). Solank as wat die ware onderliggende sein is eintlik glad, dan is die ware teken sal nie veel verwring deur glad nie, maar die geraas sal verminder. In terme van die frekwensie komponente van 'n sein, 'n glad werking tree op as 'n laaglaatfilter. die vermindering van die hoë-frekwensie komponente en verby die lae-frekwensie komponente met min verandering. Glad algoritmes. Die meeste glad algoritmes is gebaseer op die verskuiwing en vermeerder tegniek, waarin 'n groep van aangrensende punte in die oorspronklike data vermenigvuldig punt-vir-punt deur 'n stel van getalle (koëffisiënte) wat die gladde vorm definieer, die produkte is opgetel en gedeel deur die som van die koëffisiënte, wat een punt van stryk data word, dan is die stel koëffisiënte geskuif een punt af die oorspronklike data en die proses word herhaal. Die eenvoudigste glad algoritme is die vierkantige wagon of ongeweegde gly-gemiddelde gladde dit eenvoudig elke punt in die sein met die gemiddelde van m aangrensend punte, waar m 'n positiewe heelgetal genoem die gladde breedte vervang. Byvoorbeeld, vir 'n 3-punt glad (m 3), want j 2 tot N-1, waar S j die j de punt in die stryk sein, Y j die j de punt in die oorspronklike sein, en N is die totale aantal punte in die sein. Soortgelyke gladde bedrywighede kan gebou word vir enige gewenste gladde breedte, m. Gewoonlik m 'n onewe getal. As die geraas in die data is wit geraas (dit is, eweredig versprei oor die hele frekwensie) en sy standaardafwyking is s. dan is die standaardafwyking van die oorblywende in die sein na die eerste pas van 'n ongeweegde gly-gemiddelde glad geraas sal ongeveer s oor die vierkantswortel van m (s / sqrt (m)), waar m die gladde breedte. Ten spyte van sy eenvoud, hierdie gladde is eintlik optimum vir die algemene probleem van die vermindering van wit geraas, terwyl die behoud van die skerpste stap reaksie. Die reaksie op 'n stap verandering is in werklikheid lineêre. sodat hierdie filter het die voordeel van heeltemal reageer met geen nawerking sy binne sy reaksie tyd. wat gelyk is aan die gladde breedte gedeel deur die sampling rate. Die driehoekige glad is soos die vierkantige gladde, hierbo, behalwe dat dit implementeer 'n geweegde glad funksie. Vir 'n 5-punt glad (m 5), want j 3 tot N-2, en insgelyks vir ander glad breedtes (sien die sigblad UnitGainSmooths. xls). In albei hierdie gevalle, die heelgetal in die deler is die som van die koëffisiënte in die teller, wat lei tot 'n eenheid-wins gladde dat geen effek op die sein het waar dit is 'n reguit lyn en wat die gebied onder pieke bewaar. Dit is dikwels nuttig om 'n glad werking meer as een keer aansoek doen, dit wil sê om 'n reeds stryk sein glad, ten einde meer en meer ingewikkeld glad maak bou. Byvoorbeeld, die 5-punt driehoekige gladde bo is gelykstaande aan twee passe van 'n 3-punt vierkantige glad. Drie pas van 'n 3-punt vierkantige gladde resultaat in 'n 7-punt pseudo-Gaussiese of hooiberg gladde, waarvoor die koëffisiënte in die verhouding 1: 3: 6: 7: 6: 3: 1. Die algemene reël is dat N passe van 'n w - width gladde resultate in 'n gekombineerde gladde breedte van N w - N 1. Byvoorbeeld, 3 passe van 'n 17-punt glad resultate in 'n 49-punt glad. Hierdie multi-pass glad maak is meer effektief op die vermindering van hoë-frekwensie geraas in die sein as 'n vierkantige gladde maar uitstal stadiger stap reaksie. In al hierdie glad maak, is die breedte van die gladde m gekies om 'n vreemde heelgetal wees, sodat die gladde koëffisiënte simmetries gebalanseer rondom die sentrale punt, wat belangrik is, want dit behou die posisie x-as van pieke en ander funksies in die sein. (Dit is veral noodsaaklik vir analitiese en spektroskopiese aansoeke, want die piek posisies is dikwels belangrike doelwitte meting). Let daarop dat ons hier is die veronderstelling dat die x-as tussenposes van die sein is uniform, dit wil sê dat die verskil tussen die x-as waardes van aangrensende punte is dieselfde regdeur die sein. Dit is ook aanvaar in baie van die ander sein-verwerking tegnieke in hierdie essay beskryf, en dit is 'n baie algemene (maar nie noodsaaklik) kenmerkend van seine wat verkry word deur outomatiese en gerekenariseerde toerusting. Die Savitzky-Golay glad is gebaseer op die kleinste-kwadrate pas van polinome te segmente van die data. Die algoritme word in www. wire. tu-bs. de/OLDWEB/mameyer/cmr/savgol. pdf. In vergelyking met die gly-gemiddelde glad maak, die Savitzky-Golay glad nie meer so effektief op die vermindering van geraas, maar meer effektief op die behoud van die vorm van die oorspronklike sein. Dit is in staat om van differensiasie asook glad. Die algoritme is meer kompleks en die rekenaarmatige keer groter is as die gladde tipes wat hierbo bespreek is, maar met 'n moderne rekenaars die verskil is nie beduidende en kode in verskeie tale is aanlyn oral beskikbaar. Sien SmoothingComparison. Die vorm van 'n glad algoritme kan bepaal word deur die toepassing van daardie gladde 'n delta-funksie. 'n sein wat bestaan uit al nulle behalwe vir een punt, soos blyk uit die eenvoudige Matlab / Octave script DeltaTest. m. Geraas vermindering . Glad gewoonlik verminder die geraas in 'n sein. As die geraas is wit (dit is, eweredig versprei oor die hele frekwensie) en sy standaardafwyking is s. dan is die standaardafwyking van die oorblywende in die sein na 'n aangee van 'n vierkantige geraas gladde sal ongeveer s / sqrt (m), waar m die gladde breedte wees. As 'n driehoekige gladde plaas gebruik word, sal die geraas effens minder wees, oor s 0.8 / sqrt (m). Glad bedrywighede kan meer as een keer toegepas word: dit wil sê, kan 'n voorheen-stryk sein weer glad. In sommige gevalle kan dit nuttig wees as daar 'n groot deel van 'n hoë-frekwensie geraas in die sein. Maar die geluidsreductie vir wit geraas is minder in elke opeenvolgende glad. Byvoorbeeld, drie passe van 'n vierkantige glad verminder wit geraas met 'n faktor van ongeveer s 0.7 / sqrt (m), slegs 'n geringe verbetering op twee passe. Die frekwensieverspreiding van geraas, deur geraas kleur aangewese. aansienlik effekte die vermoë van gladstryking om geraas te verminder. Die Matlab / Octave funksie NoiseColorTest. m vergelyk die effek van 'n 100-punt wagon (ongeweegde gly gemiddelde) glad op die standaardafwyking van wit, pienk en blou geraas, wat almal 'n oorspronklike onbestreken standaardafwyking van 1.0. Omdat glad is 'n laaglaatfilter proses, dit effekte lae frekwensie (pienk) geraas minder, en 'n hoë-frekwensie (blou) geraas meer as wit geraas. Einde effekte en die verlore punte probleem. Nota in die vergelykings hierbo dat die 3-punt vierkantige gladde gedefinieer net vir j 2 tot N-1. Daar is nie genoeg data in die sein te definieer 'n volledige 3-punt glad vir die eerste punt in die sein (j 1) of vir die laaste punt (j N). want daar is geen data punte voor die eerste punt of na die laaste punt. (Net so, 'n 5-punt glad gedefinieer net vir j 3 tot N-2, en dus 'n gladde kan nie bereken word vir die eerste twee punte of vir die laaste twee punte). In die algemeen, vir 'n m - width gladde, daar sal (m -1) / 2 punte aan die begin van die sein en (m -1) wees / 2 punte aan die einde van die sein waarvoor 'n volledige m - width glad kan nie bereken word. Wat om te doen Daar is twee benaderings. Een daarvan is om die verlies van punte te aanvaar en te knip af die punte of vervang dit met nulle in die gladde sein. (Dis die benadering wat in die meeste van die figure in hierdie vraestel). Die ander benadering is om progressief kleiner glad maak gebruik aan die einde van die sein, byvoorbeeld om te gebruik 2, 3, 5, 7 punt glad vir sein punte 1, 2, 3, en 4 en vir punte N, N-1 , N-2, N-3. onderskeidelik. Die later benadering kan beter wees as die kante van die sein bevat belangrike inligting, maar dit verhoog uitvoering tyd. Die fastsmooth funksie hieronder bespreek kan enigeen van hierdie twee metodes aan te wend. Voorbeelde van gladstryking. 'N Eenvoudige voorbeeld van gladstryking word in Figuur 4. Die linker helfte van hierdie sein is 'n lawaaierige piek. Die regter helfte is dieselfde piek na 'n driehoekige glad algoritme ondergaan. Die geraas is aansienlik verminder, terwyl die piek self nouliks verander. Smoothing verhoog die sein-tot-ruis verhouding en laat die sein eienskappe (piek posisie, hoogte, breedte, omgewing, ens) meer akkuraat gemeet word deur visuele inspeksie. Figuur 4. Die linker helfte van hierdie sein is 'n lawaaierige piek. Die regter helfte is dieselfde piek na 'smoothing algoritme ondergaan. Die geraas is aansienlik verminder, terwyl die piek self nouliks verander, maak dit makliker om die hoogtepunt posisie, hoogte te meet, en direk breedte met grafiese of visuele skatting (maar dit beteken nie metings gemaak deur kleinste-kwadrate metodes sien hieronder te verbeter). Hoe groter die gladde breedte, hoe groter is die geluidsreductie, maar ook hoe groter is die moontlikheid dat die sein sal verwring deur die gladheid werking. Die optimale keuse van gladde breedte hang af van die breedte en vorm van die sein en die digitalisering interval. Vir piek-tipe seine, die kritieke faktor is die smoothing verhouding. die verhouding tussen die gladde breedte m en die aantal punte in die half-breedte van die piek. In die algemeen, die verhoging van die glad verhouding verbeter die sein-tot-ruis verhouding, maar veroorsaak 'n vermindering in amplitude en in toename in die bandwydte van die piek. Die syfers hierbo toon voorbeelde van die effek van drie verskillende gladde breedtes op lawaaierige Gaussiese-vormige pieke. In die figuur aan die linkerkant, die hoogtepunt 'n (ware) hoogte van 2,0 en daar is 80 punte in die half-breedte van die piek. Die rooi lyn is die oorspronklike onbestreken piek. Die drie bo-groen lyne is die resultate van gladstryking hierdie hoogtepunt met 'n driehoekige glad van wydte (van bo na onder) 7, 25, en 51 punte. Omdat die breedte hoogtepunt is 80 punte, die gladde verhoudings van hierdie drie glad maak is 7/80 0.09, 25/80 0.31, en 51/80 0,64, onderskeidelik. Soos die gladde breedte toeneem, is die geraas progressief verminder, maar die piek hoogte ook effens verminder. Vir die grootste gladde, is die breedte piek effens toegeneem. In die figuur aan die regterkant, die oorspronklike piek (in rooi) het 'n ware hoogtepunt van 1,0 en 'n half-breedte van 33 punte. (Dit is ook minder luidrugtig as die voorbeeld aan die linkerkant.) Die drie bo-groen lyne is die resultate van die dieselfde drie driehoekige glad maak van wydte (van bo na onder) 7, 25, en 51 punte. Maar omdat die breedte hoogtepunt in hierdie geval is slegs 33 punte, die gladde verhoudings van hierdie drie glad maak is groter - onderskeidelik 0.21, 0.76 en 1.55. Jy kan sien dat die piek distortion (vermindering van piek hoogte en toename in piek breedte) is groter vir die nouer piek omdat die gladde verhoudings is hoër. Glad verhoudings van meer as 1,0 word selde as gevolg van oormatige piek ondergang. Let daarop dat selfs in die ergste geval, die piek posisies is nie in werking gestel (die veronderstelling dat die oorspronklike pieke was simmetriese en nie oorvleuel deur ander pieke). As die behoud van die vorm van die piek is belangriker as die optimalisering van die sein-tot-ruis-verhouding, die Savitzky-Golay het die voordeel bo gly-gemiddelde glad maak. In alle gevalle, die totale oppervlakte onder die piek onveranderd. Die probleem met smoothing is dat dit dikwels minder voordelig as wat jy dink. Dit is baie belangrik om daarop te wys dat glad resultate soos geïllustreer in die bostaande figuur bedrieglik indrukwekkende mag wees omdat hulle 'n enkele voorbeeld van 'n raserige sein wat glad gemaak om verskillende grade in diens. Dit veroorsaak dat die kyker om die bydrae van 'n lae-frekwensie geraas, wat moeilik is om visueel te skat, want daar is so min lae-frekwensie siklusse in die sein rekord onderskat. Hierdie probleem kan gevisualiseer deur die opname van 'n aantal onafhanklike monsters van 'n raserige sein bestaande uit 'n enkele piek, soos geïllustreer in die twee figure hieronder. Hierdie syfers toon tien gesuperponeer erwe met dieselfde piek maar met onafhanklike wit geraas, elke geplot met 'n ander lyn kleur, onbestreken aan die linkerkant en stryk aan die regterkant. Inspeksie van die reëlmatige seine op die regte toon duidelik die variasie in piek posisie, hoogte, en breedte tussen die 10 monsters wat veroorsaak word deur die lae frekwensie geraas wat nog in die stryk seine. Net omdat 'n sein lyk glad nie beteken daar is geen geluid. Lae-frekwensie geraas wat nog in die seine na glad sal steeds inmeng met akkurate meting van piek posisie, hoogte, en breedte. Dit moet duidelik wees dat glad kan selde heeltemal geraas uit te skakel, want die meeste geraas is versprei oor 'n wye verskeidenheid van frekwensies, en glad eenvoudig verlaag die geraas in 'n deel van sy frekwensie reeks.
Comments
Post a Comment