Sunday, 15 October 2017

8 Punt Bewegende Gemiddelde Filter Matlab


Frekwensie van die lopende gemiddeld Filter Die frekwensieweergawe van 'n LTI stelsel is die DTFT van die impulsrespons, Die impulsrespons van 'n L - sample bewegende gemiddelde is sedert die bewegende gemiddelde filter is FIR, die frekwensieweergawe verminder om die eindige som Ons kan die baie nuttig identiteit gebruik om die frekwensie reaksie as waar ons toelaat dat AE minus jomega skryf. N 0, en M L minus 1. Ons kan belangstel in die omvang van hierdie funksie word ten einde te bepaal watter frekwensies te kry deur middel van die filter unattenuated en wat verswakte. Hier is 'n plot van die omvang van hierdie funksie lyk, vir L 4 (rooi), 8 (groen) en 16 (blou). Die horisontale as wissel van nul tot pi radiale per monster. Let daarop dat in al drie gevalle, die frekwensieweergawe het 'n laagdeurlaat kenmerk. 'N konstante komponent (nul frekwensie) in die insette gaan deur die filter unattenuated. Sekere hoër frekwensies, soos pi / 2, is heeltemal uitgeskakel word deur die filter. Maar, as die bedoeling was om 'n laagdeurlaatfilter ontwerp, dan het ons nie baie goed gedoen. Sommige van die hoër frekwensies is verswakte net met 'n faktor van ongeveer 1/10 (vir die 16 punt bewegende gemiddelde) of 1/3 (vir die vier punt bewegende gemiddelde). Ons kan baie beter as dit doen. Bogenoemde plot is geskep deur die volgende Matlab kode: omega 0: pi / 400: pi H4 (1/4) (1-exp (-iomega4)) ./ (1-exp (-iomega)) H8 (1/8 ) (1-exp (-iomega8)) ./ (1-exp (-iomega)) H16 (1/16) (1-exp (-iomega16)) ./ (1-exp (-iomega)) plot (omega , ABS (H4) ABS (H8) ABS (H16)) as (0, PI, 0, 1) Kopiereg kopie 2000- - Universiteit van Kalifornië, BerkeleyComputing 'n lopende gemiddeld van 'n eenvoudige 1-D data vektor lyk eenvoudig genoeg. Trouens, die MATLAB dokumentasie vir 'n filter gelukkig beweer iets soos: Jy kan filter gebruik om 'n lopende gemiddelde vind sonder die gebruik van 'n for-lus. Hierdie voorbeeld vind die loop gemiddeld van 'n 16-element vektor, met behulp van 'n venster grootte van 3: Vir my doeleindes is daar twee irriterende dinge oor hierdie resultaat: uitset punt N is die gemiddeld van insette punte n - (windowSize-1)..n (dws nie-gesentreerde, soos blyk uit die horisontale verskuiwing) en punte aan die linkerkant van die beskikbare data word as nulle. FILTFILT handel oor beide kwessies, maar het ander nadele. Die deel van die Seinverwerking Gereedskap, en dit nie die geval goed gaan met Nans (wat Id soos uitgesluit van die gemiddelde). Sommige mense op Fex het natuurlik dieselfde frustrasies, maar dit lyk vir my vreemd dat daar iets van hierdie eenvoudige vereis persoonlike kode. Enigiets Im ontbreek hier gevra 10 Augustus 10 by 21:39 Hmm. is daar nog 'n manier om die padding doen en kry die gemiddelde blyk dat indien sê 3 dromme val oor die rand in vergelyking met 1, sal jy nodig het om pad met verskillende waardes ten einde die korrekte gemiddelde vir die eerste bin kry. Spesifiek, moet jy boekie met die gemiddelde van die geldige dromme, wat afhanklik is van die punt onder oorweging. So I39m nie seker dit is selfs moontlik met padding uitvoering Matt Mizumi 11 Augustus 10 by 4: 06Documentation tsmovavg uitset tsmovavg (tsobj, s, lag) gee terug Die eenvoudige bewegende gemiddeld vir finansiële tydreekse voorwerp, tsobj. lag dui die aantal vorige datapunte gebruik met die huidige data punt by die berekening van die bewegende gemiddelde. uitset tsmovavg (vektor, s, lag, dowwe) gee terug Die eenvoudige bewegende gemiddelde vir 'n vektor. lag dui die aantal vorige datapunte gebruik met die huidige data punt by die berekening van die bewegende gemiddelde. uitset tsmovavg (tsobj, e, timeperiod) gee terug Die eksponensiële geweegde bewegende gemiddelde vir finansiële tydreekse voorwerp, tsobj. Die eksponensiële bewegende gemiddelde is 'n geweegde bewegende gemiddelde, waar timeperiod spesifiseer die tydperk. Eksponensiële bewegende gemiddeldes te verminder die lag deur die toepassing van meer gewig aan onlangse pryse. Byvoorbeeld, 'n 10-tydperk eksponensiële bewegende gemiddelde gewigte die mees onlangse prys deur 18.18. Eksponensiële Persentasie 2 / (TIMEPER 1) of 2 / (WINDOWSIZE 1). uitset tsmovavg (vektor, e, timeperiod, dowwe) gee terug Die eksponensiële geweegde bewegende gemiddelde vir 'n vektor. Die eksponensiële bewegende gemiddelde is 'n geweegde bewegende gemiddelde, waar timeperiod spesifiseer die tydperk. Eksponensiële bewegende gemiddeldes te verminder die lag deur die toepassing van meer gewig aan onlangse pryse. Byvoorbeeld, 'n 10-tydperk eksponensiële bewegende gemiddelde gewigte die mees onlangse prys deur 18.18. (2 / (timeperiod 1)). uitset tsmovavg (tsobj, t, numperiod) gee terug Die driehoekige bewegende gemiddelde vir finansiële tydreekse voorwerp, tsobj. Die driehoekige bewegende gemiddelde dubbel glad die data. tsmovavg word bereken dat die eerste eenvoudige bewegende gemiddelde met venster breedte van oordek (numperiod 1) / 2. Dan bereken dit 'n tweede eenvoudige bewegende gemiddelde op die eerste bewegende gemiddelde met dieselfde venster grootte. uitset tsmovavg (vektor, t, numperiod, dowwe) gee terug Die driehoekige bewegende gemiddelde vir 'n vektor. Die driehoekige bewegende gemiddelde dubbel glad die data. tsmovavg word bereken dat die eerste eenvoudige bewegende gemiddelde met venster breedte van oordek (numperiod 1) / 2. Dan bereken dit 'n tweede eenvoudige bewegende gemiddelde op die eerste bewegende gemiddelde met dieselfde venster grootte. uitset tsmovavg (tsobj, w, gewigte) gee terug Die geweegde bewegende gemiddelde vir die finansiële tydreekse voorwerp, tsobj. deur die verskaffing van gewigte vir elke element in die bewegende venster. Die lengte van die gewig vektor bepaal die grootte van die venster. As groter gewig faktore word gebruik vir meer onlangse pryse en kleiner faktore vir vorige pryse, die neiging is meer ontvanklik vir onlangse wysigings. uitset tsmovavg (vektor, w, gewigte, dowwe) gee terug Die geweegde bewegende gemiddelde vir die vektor deur die verskaffing van gewigte vir elke element in die bewegende venster. Die lengte van die gewig vektor bepaal die grootte van die venster. As groter gewig faktore word gebruik vir meer onlangse pryse en kleiner faktore vir vorige pryse, die neiging is meer ontvanklik vir onlangse wysigings. uitset tsmovavg (tsobj, m, numperiod) gee terug Die gemodifiseerde bewegende gemiddelde vir die finansiële tydreekse voorwerp, tsobj. Die aangepaste bewegende gemiddelde is soortgelyk aan die eenvoudige bewegende gemiddelde. Oorweeg die argument numperiod die lag van die eenvoudige bewegende gemiddelde wees. Die eerste gewysigde bewegende gemiddelde bereken word soos 'n eenvoudige bewegende gemiddelde. Daaropvolgende waardes word bereken deur die toevoeging van die nuwe prys en trek die laaste gemiddelde van die gevolglike bedrag. uitset tsmovavg (vektor, m, numperiod, dowwe) gee terug Die gemodifiseerde bewegende gemiddelde vir die vektor. Die aangepaste bewegende gemiddelde is soortgelyk aan die eenvoudige bewegende gemiddelde. Oorweeg die argument numperiod die lag van die eenvoudige bewegende gemiddelde wees. Die eerste gewysigde bewegende gemiddelde bereken word soos 'n eenvoudige bewegende gemiddelde. Daaropvolgende waardes word bereken deur die toevoeging van die nuwe prys en trek die laaste gemiddelde van die gevolglike bedrag. dowwe 8212 dimensie te bedryf saam positiewe heelgetal met waarde 1 of 2 Dimension te bedryf saam, wat as 'n positiewe heelgetal met 'n waarde van 1 of 2. dowwe is 'n opsionele insette argument, en as dit nie gebruik word as 'n inset, die verstek waarde 2 word aanvaar. Die standaard van dowwe 2 dui op 'n ry-georiënteerde matriks, waar elke ry is 'n veranderlike en elke kolom is 'n waarneming. As dowwe 1. die insette is veronderstel om 'n kolomvektor of-kolom-georiënteerde matriks, waar elke kolom is 'n veranderlike en elke ry 'n waarneming wees. e 8212 aanwyser vir eksponensiële bewegende gemiddelde karakter vektor Eksponensiële bewegende gemiddelde is 'n geweegde bewegende gemiddelde, waar timeperiod is die tydperk van die eksponensiële bewegende gemiddelde. Eksponensiële bewegende gemiddeldes te verminder die lag deur die toepassing van meer gewig aan onlangse pryse. Byvoorbeeld, 'n tydperk van 10 eksponensiële bewegende gemiddelde gewigte die mees onlangse prys deur 18.18. Eksponensiële Persentasie 2 / (TIMEPER 1) of 2 / (WINDOWSIZE 1) timeperiod 8212 Lengte van tyd positiewe getal Kies Jou CountryWhat is die nadele van bewegende gemiddelde filter wanneer dit gebruik word met tydreeksdata Daar is 'n bietjie van 'n verwarrende in die terminologie in seinverwerking. Bewegende gemiddelde filters is filters berekening van 'n reeks van geweegde middel van die insetsein. Benewens Balaacutezs Kotoszrsquo kommentaar, is dit belangrik dat die gewigte is nie gelyk, maw jy die loop rekenkundige gemiddelde van die insetsein te bereken. Hierdie tipe filter word gewoonlik genoem hardloop gemiddelde. Jy shouldnrsquot gebruik diegene omdat hulle te skakel sekere frekwensies in jou spektrum en ander omgekeer. Thatrsquos slegte indien u belangstel in 'n spesifieke frekwensie band, wat óf uitgeskakel (geen reaksie) of omgekeer (verandering van teken en dus oorsaaklikheid) (kyk bladsy 177 in my handboek MATLAB Resepte vir Aardwetenskappe, Springer 2010) is. Hier is 'n MATLAB Voorbeeld om die uitwerking van die bestuur van hulpbronne te sien. As 'n voorbeeld, die toepassing van die filter om 'n sein met 'n tydperk van ongeveer 1 / 0,09082 heeltemal uitskakel dat sein. Verder, aangesien die omvang van die frekwensieweergawe is die absolute van die komplekse frekwensie reaksie, die grootte reaksie is eintlik negatief tussen 0,3633, en tussen 0,4546 en die Nyquist frekwensie. Alle sein komponente met frekwensies binne hierdie intervalle word weerspieël op die t-as. As 'n voorbeeld, probeer ons 'n sinusgolf met 'n tydperk van 7,0000, bv 'n frekwensie van ongeveer 0,1429, wat binne die eerste interval met 'n negatiewe omvang reaksie: t (1: 100) x10 2sin (2pit / 7) B10 kinders (1,11) / 11 M10 lengte (B10) Y10 filter (B10, 1, x10) Y10 Y10 (1 (m10-1) / 2: end (m10-1) / 2,1) Y10 (END1: endm10-1,1) nulle (m10-1,1) plot (t, x10, t, Y10) Hier is die amplitude van die filter wat die nulle en die knip: h, w freqz (b10,1,512) f 1W / (2pi) omvang ABS (h) plot (f, omvang) die sinusgolf met 'n tydperk van 7 ondervind 'n amplitude vermindering van bv sowat 80 maar ook verander teken soos jy kan sien uit die plot. Die uitskakeling van sekere frekwensies en daarby van die sein het belangrike gevolge terwyl die interpretasie van kousaliteit in aardwetenskappe. Hierdie filters, al is hulle word as standaard in sigblad programme vir smoothing, moet dus heeltemal vermy. As 'n alternatief, moet filters met 'n spesifieke frekwensie reaksie gebruik word, soos 'n Butterworth laagdeurlaatfilter. Het jy 'n vraag wat jy hoef beantwoord quicklyMoving Gemiddelde Filter (MA filter) laai. Die bewegende gemiddelde filter is 'n eenvoudige Low Pass FIR (Eindige Impulse Response) filter wat algemeen gebruik word vir glad 'n verskeidenheid van monsters data / sein. Dit neem M monsters van insette op 'n tyd en neem die gemiddelde van die M-monsters en produseer 'n enkele uitset punt. Dit is 'n baie eenvoudige LPF (laaglaatfilter) struktuur wat handig te pas kom vir wetenskaplikes en ingenieurs om ongewenste lawaaierige komponent filter van die beoogde data. As die filter lengte toeneem (die parameter M) die gladheid van die uitset verhoog, terwyl die skerp oorgange in die data gemaak word toenemend stomp. Dit impliseer dat die filter het 'n uitstekende tyd domein reaksie, maar 'n swak frekwensieweergawe. Die MA filter voer drie belangrike funksies: 1) Dit neem M insette punte, bere die gemiddelde van die M-punte en produseer 'n enkele uitset punt 2) As gevolg van die berekening / berekeninge betrokke. die filter stel 'n definitiewe bedrag van die vertraging 3) Die filter dien as 'n laaglaatfilter (met 'n swak frekwensiedomein reaksie en 'n goeie tyd domein reaksie). Matlab Kode: Na aanleiding van Matlab kode simuleer die tydgebied reaksie van 'n M-punt bewegende gemiddelde filter en ook plotte die frekwensieweergawe vir verskeie filter lengtes. Tyd Domain Reaksie: Op die eerste plot, ons het die insette wat gaan in die bewegende gemiddelde filter. Die insette is raserig en ons doel is om die geraas te verminder. Die volgende figuur is die uitset reaksie van 'n 3-punt bewegende gemiddelde filter. Dit kan afgelei word uit die figuur dat die 3-punt bewegende gemiddelde filter nie veel in die filter van die geraas gedoen het. Ons verhoog die filter krane tot 51-punte en ons kan sien dat die geraas in die uitset baie, wat uitgebeeld word in die volgende figuur verminder. Ons verhoog die krane verder tot 101 en 501 en ons kan waarneem dat selfs-al die geraas is amper nul, die oorgange is drasties afgestomp uit (kyk na die helling op die weerskante van die sein en vergelyk kan word met die ideale baksteenmuur oorgang in ons insette). Frekwensie: Van die frekwensieweergawe dit kan beweer dat die roll-off is baie stadig en die stop orkes verswakking is nie goed nie. Gegewe hierdie stop-band attenuasie, duidelik, die bewegende gemiddelde filter kan nie een band van frekwensies van 'n ander te skei. Soos ons weet dat 'n goeie vertoning in die tydgebied resultate in 'n swak vertoning in die frekwensiedomein, en omgekeerd. In kort, die bewegende gemiddelde is 'n buitengewoon goeie glad filter (die aksie in die tydgebied), maar 'n besonder slegte laaglaatfilter (die aksie in die frekwensiedomein) Eksterne skakel: aanbevole boeke: Primêre Sidebar

No comments:

Post a Comment