Wednesday, 18 October 2017

Flytte Gjennomsnittet Filter Utforming


Frekvensrespons av det kjørende gjennomsnittsfiltret Frekvensresponsen til et LTI-system er DTFT av impulsresponsen. Impulsresponsen av et L-prøve-glidende gjennomsnitt er Siden det bevegelige gjennomsnittlige filteret er FIR, reduserer frekvensresponsen til den endelige summen Vi kan bruke den svært nyttige identiteten til å skrive frekvensresponsen som hvor vi har sluppet minus jomega. N 0 og M L minus 1. Vi kan være interessert i størrelsen på denne funksjonen for å avgjøre hvilke frekvenser som kommer gjennom filteret som ikke er overvåket og som er dempet. Nedenfor er et plott av størrelsen på denne funksjonen for L 4 (rød), 8 (grønn) og 16 (blå). Den horisontale aksen varierer fra null til pi radianer per prøve. Legg merke til at frekvensresponsen i alle tre tilfeller har en lowpass-karakteristikk. En konstant komponent (nullfrekvens) i inngangen passerer gjennom filteret uopprettholdt. Visse høyere frekvenser, som pi 2, elimineres helt av filteret. Men hvis hensikten var å designe et lavpassfilter, har vi ikke gjort det veldig bra. Noen av de høyere frekvensene dempes bare med en faktor på ca 110 (for 16 poeng glidende gjennomsnitt) eller 13 (for firepunkts glidende gjennomsnitt). Vi kan gjøre mye bedre enn det. Ovennevnte tegning ble opprettet av følgende Matlab-kode: omega 0: pi400: pi H4 (14) (1-exp (-iomega4)). (1-exp (-iomega)) H8 (18) iomega8)). (1-exp (-iomega)) H16 (116) (1-exp (-iomega16)) (1-exp (-iomega)) plot (omega, abs (H4) abs H16)) akse (0, pi, 0, 1) Opphavsretts kopi 2000- - Universitetet i California, Berkeley Jeg må designe et bevegelig gjennomsnittsfilter som har en avskjæringsfrekvens på 7,8 Hz. Jeg har brukt glidende gjennomsnittlige filtre før, men så vidt jeg er klar over, er den eneste parameteren som kan mates inn, antall poeng som skal gjennomsnittes. Hvordan kan dette forholde seg til en avskjæringsfrekvens Den inverse av 7,8 Hz er 130 ms, og jeg jobber med data som samples ved 1000 Hz. Betyr dette at jeg burde bruke et bevegelige gjennomsnittlig filtervinduestørrelse på 130 prøver, eller er det noe annet jeg savner her, spurte Jul 18 13 klokken 9:52 Det glidende gjennomsnittsfilteret er filteret som brukes i tidsdomene for å fjerne støyen er lagt til og også for utjevningsformålet, men hvis du bruker det samme bevegelige gjennomsnittsfilteret i frekvensområdet for frekvensseparasjon, vil ytelsen være verst. så i så fall bruk frekvensdomener filtre ndash user19373 Feb 3 16 at 5:53 Det glidende gjennomsnittsfilteret (noen ganger kjent som en boxcar filter) har en rektangulær impulsrespons: Eller, oppgitt annerledes: Husk at en diskret tidssystemfrekvensrespons er lik den diskrete tiden Fourier-transformasjonen av impulsresponsen, kan vi beregne det som følger: Det som var mest interessert i for ditt tilfelle er størrelsesresponsen til filteret, H (omega). Ved hjelp av et par enkle manipulasjoner kan vi få det på en enklere måte: Dette ser kanskje ikke ut til å være lettere å forstå. Men på grunn av Eulers identitet. husk det: Derfor kan vi skrive ovenstående som: Som jeg sa før, hva du virkelig bekymret for, er størrelsen på frekvensresponsen. Så, vi kan ta størrelsen på det ovennevnte for å forenkle det videre: Merk: Vi kan slippe de eksponentielle betingelsene ut fordi de ikke påvirker størrelsen på resultatet e 1 for alle verdier av omega. Siden xy xy for to todelige komplekse tall x og y, kan vi konkludere med at tilstedeværelsen av eksponentielle termer ikke påvirker den generelle størrelsesresponsen (i stedet påvirker de systemfasesponsen). Den resulterende funksjonen inne i størrelsesbeslagene er en form for Dirichlet-kjernen. Det kalles noen ganger en periodisk sinc-funksjon, fordi den ligner sinc-funksjonen noe i utseende, men er periodisk i stedet. Uansett, siden definisjonen av cutoff-frekvensen er noe underspecified (-3 dB punkt -6 dB poeng første sidelobe null), kan du bruke ovennevnte ligning for å løse alt du trenger. Spesifikt kan du gjøre følgende: Sett H (omega) til verdien som svarer til filterresponsen du vil ha ved cutoff-frekvensen. Sett omega lik til cutoff frekvensen. For å kartlegge en kontinuerlig tidsfrekvens til diskretidsdomenet, husk at omega 2pi frac, hvor fs er samplingsfrekvensen. Finn verdien av N som gir deg den beste avtalen mellom venstre og høyre side av ligningen. Det skal være lengden på det bevegelige gjennomsnittet. Hvis N er lengden på det bevegelige gjennomsnittet, er en omtrentlig avskjæringsfrekvens F (gyldig for N gt 2) i normalisert frekvens Fffs: Den inverse av denne er Denne formel er asymptotisk riktig for stor N og har om lag 2 feil for N2 og mindre enn 0,5 for N4. PS! Etter to år, her endelig hva var tilnærmingen fulgt. Resultatet ble basert på tilnærming av MA-amplitudespektret rundt f0 som en parabola (2. rekkefølge Serie) i henhold til MA (Omega) ca. 1 frac - frac Omega2 som kan gjøres mer nøyaktig nær nullkryssing av MA (Omega) - frac ved å multiplisere Omega med en koeffisient som oppnår MA (Omega) ca. 10.907523 (frac - frac) Omega2 Oppløsningen av MA (Omega) - frac 0 gir resultatene ovenfor, hvor 2pi F Omega. Alt ovenfor gjelder 3 dB cutoff frekvensen, emnet for dette innlegget. Noen ganger, selv om det er interessant å oppnå en dempingsprofil i stoppbånd som er sammenlignbar med en 1-ords IIR Low Pass Filter (single pole LPF) med en gitt -3dB cut-off frekvens (en slik LPF kalles også leaky integrator, å ha en stolpe ikke akkurat ved likestrøm men nær det). Faktisk har både MA og den første rekkefølgen IIR LPF -20dBdecade-skråningen i stoppbåndet (en trenger en større N enn den som brukes i figuren, N32, for å se dette), men mens MA har spektrale nuller ved FkN og en 1f evelope, har IIR filteret bare en 1f profil. Hvis man ønsker å skaffe et MA-filter med lignende støyfiltreringsegenskaper som dette IIR-filteret, og samsvarer med 3dB-kuttfrekvensene for å være det samme, ved å sammenligne de to spektrene, ville han innse at stoppbåndets rippel av MA-filteret ender opp 3dB under det av IIR-filteret. For å få det samme stoppbåndet ripple (dvs. samme støydempning) som IIR-filteret, kan formlene modifiseres som følger: Jeg fant tilbake Mathematica-skriptet der jeg beregnet kuttet av for flere filtre, inkludert MA-en. Resultatet ble basert på tilnærming av MA-spektret rundt f0 som en parabola ifølge MA (Omega) Sin (OmegaN2) Sin (Omega2) Omega 2piF MA (F) ca. N16F2 (N-N3) pi2. Og dermed krysse med 1sqrt derfra. ndash Massimo 17 jan 16 kl 02:08 Den bevegelige gjennomsnitt som et filter Det bevegelige gjennomsnittet brukes ofte til å utjevne data i nærvær av støy. Det enkle glidende gjennomsnittet blir ikke alltid gjenkjent som FIT-filteret (Finite Impulse Response), det er det, men det er faktisk et av de vanligste filtre i signalbehandling. Ved å behandle det som et filter, kan det sammenlignes med f. eks. Windowed-sinc filtre (se artiklene på lavpass, høypass og bandpass og bandavvisningsfiltre for eksempler på dem). Den store forskjellen med de filtre er at det bevegelige gjennomsnittet er egnet for signaler som den nyttige informasjonen er inneholdt i tidsdomene. hvorav utjevningsmålinger ved gjennomsnittsverdi er et godt eksempel. Windowed-sinc filtre, derimot, er sterke utøvere i frekvensdomene. med utjevning i lydbehandling som et typisk eksempel. Det er en mer detaljert sammenligning av begge typer filtre i Time Domain vs Frekvensdomenes ytelse av filtre. Hvis du har data som både tid og frekvensdomene er viktige for, kan du kanskje se på Variasjoner på Moving Average. som presenterer en rekke vektede versjoner av det bevegelige gjennomsnittet som er bedre på det. Det bevegelige gjennomsnittet av lengden (N) kan defineres som skrevet som det typisk blir implementert, med den nåværende utgangsprøven som gjennomsnittet av de tidligere (N) - prøver. Sett som et filter, utfører det bevegelige gjennomsnitt en konvolusjon av inngangssekvensen (xn) med en rektangulær puls av lengde (N) og høyde (1N) (for å gjøre området for pulsen, og dermed forsterkningen av filteret , en ). I praksis er det best å ta (N) merkelig. Selv om et glidende gjennomsnitt kan også beregnes ved å bruke et jevnt antall prøver, har det en fordel at forsinkelsen av filteret vil være et heltall antall prøver ved bruk av en merkelig verdi for (N) siden forsinkelsen av et filter med (N) prøvene er nøyaktig ((N-1) 2). Det bevegelige gjennomsnittet kan deretter justeres nøyaktig med de opprinnelige dataene ved å skifte det med et heltall antall prøver. Time Domain Siden det bevegelige gjennomsnittet er en konvolusjon med en rektangulær puls, er frekvensresponsen en sinc-funksjon. Dette gjør det noe som det dobbelte av windowed-sinc filteret, siden det er en konvolusjon med en sinc puls som resulterer i en rektangulær frekvensrespons. Det er denne sync frekvensrespons som gjør det bevegelige gjennomsnittet en dårlig utøver i frekvensdomenet. Det virker imidlertid veldig bra i tidsdomene. Derfor er det perfekt å glatte data for å fjerne støy mens du samtidig holder et raskt trinnsvar (Figur 1). For den typiske Additive White Gaussian Noise (AWGN) som ofte antas, har gjennomsnittlige (N) prøver effekten av å øke SNR med en faktor (sqrt N). Siden støyen for de enkelte prøvene er ukorrelert, er det ingen grunn til å behandle hver prøve forskjellig. Derfor vil det bevegelige gjennomsnittet, som gir hver prøve samme vekt, bli kvitt den maksimale mengden støy for en gitt trinnresponsskarphet. Gjennomføring Fordi det er et FIR-filter, kan det bevegelige gjennomsnittet implementeres gjennom konvolusjon. Det vil da ha samme effektivitet (eller mangel på det) som alle andre FIR-filter. Det kan imidlertid også implementeres rekursivt, på en svært effektiv måte. Det følger direkte fra definisjonen at denne formelen er resultatet av uttrykkene for (yn) og (yn1), det vil si hvor vi legger merke til at forandringen mellom (yn1) og (yn) er at et ekstra uttrykk (xn1N) vises på slutten, mens uttrykket (xn-N1N) er fjernet fra begynnelsen. I praktiske applikasjoner er det ofte mulig å utelate divisjonen med (N) for hvert begrep ved å kompensere for den resulterende gevinsten av (N) på et annet sted. Denne rekursive gjennomføringen vil bli mye raskere enn konvolusjon. Hver ny verdi av (y) kan beregnes med bare to tillegg, i stedet for (N) tilleggene som ville være nødvendige for en enkel implementering av definisjonen. En ting å se etter med en rekursiv implementering er at avrundingsfeil vil samle seg. Dette kan eller ikke kan være et problem for søknaden din, men det innebærer også at denne rekursive implementeringen faktisk vil fungere bedre med et heltall implementering enn med flytende punktnumre. Dette er ganske uvanlig, siden en flytende punktimplementering vanligvis er enklere. Konklusjonen av alt dette må være at du aldri bør undervurdere bruken av det enkle glidende gjennomsnittsfilteret i signalbehandlingsprogrammer. Filter designverktøy Denne artikkelen er utfylt med et filterdesignverktøy. Eksperimenter med forskjellige verdier for (N) og visualiser de resulterende filtrene. Prøv det nå

No comments:

Post a Comment