pojke, PeterK. Jag kan inte föreställa mig ett riktigt linjärt fas - och kausalfilter som verkligen är IIR. Jag kan inte se hur du skulle få symmetri utan att det var FIR. och semantiskt skulle jag kalla en truncated IIR (TIIR) en metod för att implementera en klass av FIR. och då får du inte linjär fas om du inte till filtfilten med den, blockwise, sorta som Powell-Chau. ndash robert bristow-johnson Nov 26 15 at 3:32 Detta svar förklarar hur filtfilt fungerar. ndash Matt L. Nov 26 15 at 7:48 Ett nollfas-glidande medelfilter är ett udda FIR-filter med koefficienter där N är den (udda) filterlängden. Eftersom hn har icke-nollvärden för nlt0 är det inte orsakssamband, och följaktligen kan det endast genomföras genom att lägga till en fördröjning, dvs genom att göra det kausal. Observera att du inte kan använda Matlabs filtfilt-funktion med det filtret, eftersom även om du skulle få nollfas (med en fördröjning), blir filtratöverföringsfunktionens storlek kvadrerad, vilket motsvarar ett triangulärt impulsrespons (dvs. ingångsprover längre bort från nuvarande prov får mindre vikt). Detta svar förklarar mer detaljerat vad filtfilt does. boy, PeterK. Jag kan inte föreställa mig ett riktigt linjärt fas - och kausalfilter som verkligen är IIR. Jag kan inte se hur du skulle få symmetri utan att det var FIR. och semantiskt skulle jag kalla en truncated IIR (TIIR) en metod för att implementera en klass av FIR. och då får du inte linjär fas om du inte till filtfilten med den, blockwise, sorta som Powell-Chau. ndash robert bristow-johnson Nov 26 15 at 3:32 Detta svar förklarar hur filtfilt fungerar. ndash Matt L. Nov 26 15 at 7:48 Ett nollfas-glidande medelfilter är ett udda FIR-filter med koefficienter där N är den (udda) filterlängden. Eftersom hn har icke-nollvärden för nlt0 är det inte orsakssamband, och följaktligen kan det endast genomföras genom att lägga till en fördröjning, dvs genom att göra det kausal. Observera att du inte kan använda Matlabs filtfilt-funktion med det filtret, eftersom även om du skulle få nollfas (med en fördröjning), blir filtratöverföringsfunktionens storlek kvadrerad, vilket motsvarar ett triangulärt impulsrespons (dvs. ingångsprover längre bort från nuvarande prov får mindre vikt). Detta svar förklarar mer detaljerat vad filtfilt gör. Frekvensrespons för löpande medelfiltret Frekvensresponsen hos ett LTI-system är DTFS av impulsresponset. Impulsresponsen av ett L-provrörande medelvärde är Eftersom det glidande medelfiltret är FIR , frekvensresponsen minskar till den ändliga summan. Vi kan använda den mycket användbara identiteten för att skriva frekvensresponsen som där vi har låt oss minus jomega. N 0 och M L minus 1. Vi kan vara intresserade av storleken på denna funktion för att bestämma vilka frekvenser som går igenom filtret obetydligt och vilka dämpas. Nedan är en plot av storleken på denna funktion för L 4 (röd), 8 (grön) och 16 (blå). Den horisontella axeln sträcker sig från noll till pi radianer per prov. Observera att frekvensresponsen i alla tre fallen har en lowpass-egenskap. En konstant komponent (nollfrekvens) i ingången passerar genom filtret obetydligt. Vissa högre frekvenser, såsom pi 2, elimineras helt av filtret. Men om avsikt var att designa ett lågpassfilter, har vi inte gjort det bra. Några av de högre frekvenserna dämpas endast med en faktor på ca 110 (för 16-punkts glidande medelvärdet) eller 13 (för det fyrapunkts glidande medlet). Vi kan göra mycket bättre än det. Ovanstående plot skapades av följande Matlab-kod: 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) H16)) axel (0, pi, 0, 1) Copyright kopia 2000- - University of California, BerkeleyThe Scientist and Engineers Guide till digital signalbehandling av Steven W. Smith, Ph. D. Kapitel 19: Rekursiva filter Det finns tre typer av fasrespons som ett filter kan ha: nollfas. linjär fas. och icke-linjär fas. Ett exempel på var och en av dessa visas i Figur 19-7. Som visas i (a) kännetecknas nollfasfiltret av ett impulsrespons som är symmetriskt runt prov noll. Den faktiska formen spelar ingen roll, bara att de negativa numrerade proverna är en spegelbild av de positiva numrerade proverna. När Fouriertransformen tas från denna symmetriska vågform kommer fasen att vara helt noll, såsom visas i (b). Nackdelen med nollfasfilteret är att det kräver användning av negativa index, vilket kan vara obekvämt att arbeta med. Linjärt fasfilter är ett sätt runt detta. Impulssvaret i (d) är identiskt med det som visas i (a), förutom att det har skiftats för att endast använda positiva numrerade prover. Impulssvaret är fortfarande symmetriskt mellan vänster och höger, dock har symmetrins position skiftats från noll. Detta skift resulterar i fasen, (e), är en rak linje. redovisning av namnet: linjär fas. Lutningen av denna raka linje är direkt proportionell mot skiftets mängd. Eftersom skiftet i impulsresponset bara ger ett identiskt skift i utsignalen, är det linjära fasfiltret ekvivalent med nollfasfilteret för de flesta ändamål. Figur (g) visar ett impulsrespons som inte är symmetriskt mellan vänster och höger. På motsvarande sätt är fasen, (h), inte en rak linje. Med andra ord har den en olinjär fas. Förvirra inte villkoren: olinjär och linjär fas med begreppet systemlinjäritet som diskuteras i kapitel 5. Även om båda använder ordet linjär. de är inte relaterade. Varför bryr sig någon om fasen är linjär eller inte? Figurerna (c), (f) och (i) visar svaret. Dessa är pulsresponserna hos vart och ett av de tre filtren. Pulssvaret är inget mer än ett positivt stegrespons följt av ett negativt stegrespons. Pulssvaret används här eftersom det visar vad som händer med både stigande och fallande kanter i en signal. Här är den viktiga delen: Noll - och linjärfasfilter har vänster och högra kanter som ser likadant ut. medan olinjära fasfilter har vänstra och högra kanter som ser annorlunda ut. Många applikationer kan inte tolerera att vänster och höger kanter ser annorlunda ut. Ett exempel är visning av ett oscilloskop, där denna skillnad kan misstolkas som en egenskap av signalen som mäts. Ett annat exempel är videobehandling. Kan du tänka dig att sätta på din TV för att hitta vänster öra av din favoritskådespelare, som skiljer sig från hans högra öra. Det är lätt att göra ett FIR-filter (finitivt impulssvar) med en linjär fas. Detta beror på att impulsresponsen (filterkärnan) är direkt specificerad i konstruktionsprocessen. Att göra filterkärnan har vänster-höger symmetri är allt som krävs. Detta är inte fallet med IIR (rekursiva) filter, eftersom rekursionskoefficienterna är det som anges, inte impulssvaret. Impulssvaret hos ett rekursivt filter är inte symmetriskt mellan vänster och höger och har därför en olinjär fas. Analoga elektroniska kretsar har samma problem med fasresponsen. Föreställ dig en krets bestående av motstånd och kondensatorer som sitter på ditt skrivbord. Om ingången alltid har varit noll, har utmatningen alltid alltid varit noll. När en impuls appliceras på ingången laddas kondensatorerna snabbt till något värde och börjar därefter exponentiellt sönder genom motstånden. Impulsresponsen (dvs utsignalen) är en kombination av dessa olika sönderfallande exponentialer. Impulssvaret kan inte vara symmetriskt, eftersom utsignalen var noll före impulsen och exponentiell sönderfall når aldrig någonsin ett värde på noll igen. Analoga filterdesigners angriper detta problem med Bessel-filtret. presenteras i kapitel 3. Bessel-filtret är konstruerat för att ha så linjär fas som möjligt men det ligger långt under prestanda för digitala filter. Möjligheten att tillhandahålla en exakt linjär fas är en klar fördel med digitala filter. Lyckligtvis finns det ett enkelt sätt att modifiera rekursiva filter för att erhålla en nollfas. Figur 19-8 visar ett exempel på hur detta fungerar. Ingångssignalen som ska filtreras visas i (a). Figur (b) visar signalen efter det att den har filtrerats av ett enkelpoligt lågpassfilter. Eftersom detta är ett icke-linjärt fasfilter, ser inte vänster och höger kanter på samma sätt som de är inverterade versioner av varandra. Såsom tidigare beskrivits implementeras detta rekursiva filter genom att börja vid prov 0 och arbeta mot prov 150, beräkna varje prov längs vägen. Antag nu att istället för att flytta från prov 0 mot prov 150 börjar vi vid prov 150 och flytta mot prov 0. Med andra ord beräknas varje prov i utsignalen från inmatnings - och utgångsprover till höger om provet som bearbetas på. Detta innebär att rekursionsekvationen, ekv. 19-1, ändras till: Figur (c) visar resultatet av denna omvänd filtrering. Detta är analogt med att man överför en analog signal via en elektronisk RC-krets under körningstid bakåt. E-post och e-postmeddelanden. Filtrering i omvänd riktning ger inte någon fördel i sig. Den filtrerade signalen har fortfarande kvar och högra kanter som inte ser lika ut. Den magiska händer när framåt och omvänd filtrering kombineras. Figur (d) resulterar i att filtrera signalen i framåtriktningen och sedan filtrera igen i omvänd riktning. Voila Detta ger ett rekursivt filter med nollfas. I själva verket kan varje rekursivt filter omvandlas till nollfas med denna dubbelriktad filtreringsteknik. Det enda straffet för denna förbättrade prestanda är en faktor av två i körningstid och programkomplexitet. Hur hittar du impuls - och frekvensresponsen hos det övergripande filtret Svarfrekvensens storlek är samma för varje riktning, medan faserna är motsatta i teckenfönstret. När de båda riktningarna kombineras, blir storleken kvadrerad. medan fasen avbryts till noll. I tidsdomänen motsvarar detta att man sammanfogar det ursprungliga impulssvaret med en vänster-till-höger omvänd version av sig själv. Exempelvis är impulssvaret hos ett enkelspalt lågpassfilter ett ensidigt exponentiellt. Impulsresponsen hos det motsvarande dubbelriktningsfiltret är en ensidig exponentiell som sönderfaller till höger, sammanfogad med en ensidig exponentiell som faller till vänster. Att gå igenom matematiken visar sig vara en dubbelsidig exponentiell som sönder både till vänster och höger, med samma förfall som konstant som det ursprungliga filtret. Vissa applikationer har bara en del av signalen i datorn vid en viss tidpunkt, t. ex. system som växelvis matar in och utdata på en fortlöpande basis. Tvåvägsfiltrering kan användas i dessa fall genom att kombinera den med överlappningsmetoden som beskrivs i det sista kapitlet. När du kommer till frågan om hur länge impulssvaret är, säg inte oändligt. Om du gör det måste du padda varje signalsegment med ett oändligt antal nollor. Kom ihåg att impulsresponsen kan trunkeras när den har förfallit under den avrundade brusnivån, dvs omkring 15 till 20 tidskonstanter. Varje segment måste fyllas med nollor både på vänster och höger för att möjliggöra expansion under dubbelriktad filtrering.
No comments:
Post a Comment