Friday 20 October 2017

1d Bevegelig Gjennomsnitt Filter Matlab


Opprettet onsdag 08. oktober 2008 20:04 Sist oppdatert torsdag 14. mars 2013 01:29 Skrevet av Batuhan Osmanoglu Hits: 41382 Flyttende gjennomsnitt I Matlab Ofte finner jeg meg selv i behov av å beregne dataene jeg må redusere støyen litt bit. Jeg skrev noen funksjoner for å gjøre akkurat det jeg vil, men matlabs innebygd filterfunksjon fungerer også bra bra. Her skriver jeg om 1D og 2D-gjennomsnittsdata. 1D filter kan realiseres ved hjelp av filterfunksjonen. Filterfunksjonen krever minst tre inngangsparametre: tellerkoeffisienten for filteret (b), nevnte koeffisient for filteret (a) og dataene (X) selvfølgelig. Et løpende gjennomsnittfilter kan defineres enkelt ved: For 2D-data kan vi bruke Matlabs filter2-funksjonen. For mer informasjon om hvordan filteret fungerer, kan du skrive: Her er en rask og skitten implementering av et 16 til 16 glidende gjennomsnittsfilter. Først må vi definere filteret. Siden alt vi vil ha er like bidrag fra alle naboer, kan vi bare bruke de funksjonene. Vi deler alt med 256 (1616) siden vi ikke vil endre det generelle nivået (amplitude) av signalet. For å bruke filteret kan vi bare si følgende Nedenfor er resultatene for fase av et SAR interferogram. I dette tilfellet er Range i Y-aksen, og Azimuth er kartlagt på X-aksen. Filtret var 4 piksler bredt i rekkevidde og 16 piksler bredt i Azimuth. Mean Filter Vanlige navn: Gjennomsnittlig filtrering, utjevning, gjennomsnittlig, boksfiltrering Kort beskrivelse Gjennomsnittlig filtrering er en enkel, intuitiv og enkel å implementere metode for utjevning av bilder, dvs. mengde intensitetsvariasjon mellom en piksel og den neste. Det brukes ofte til å redusere støy i bilder. Slik fungerer det Ideen om gjennomsnittlig filtrering er bare å erstatte hver pikselverdi i et bilde med gjennomsnittlig (gjennomsnittlig) verdi for naboene, inkludert seg selv. Dette medfører at man eliminerer pikselverdier som ikke representerer omgivelsene. Gjennomsnittlig filtrering anses vanligvis som et konvoluttfilter. Som andre omveltninger er den basert rundt en kjerne. som representerer formen og størrelsen på nabolaget som skal samples ved beregning av gjennomsnittet. Ofte brukes en 32153 kvadratkjerne, som vist i figur 1, selv om større kjerner (for eksempel 52155 kvadrater) kan brukes til mer alvorlig utjevning. (Merk at en liten kjerne kan brukes mer enn en gang for å produsere en lignende, men ikke identisk effekt som et enkelt pass med en stor kjerne.) Figur 1 32153 gjennomsnittlig kjerne som ofte brukes i gjennomsnittlig filtrering Beregner den enkle konvolusjonen av et bilde med Denne kjernen utfører den gjennomsnittlige filtreringsprosessen. Retningslinjer for bruk Gjennomsnittlig filtrering brukes mest som en enkel metode for å redusere støy i et bilde. Vi illustrerer filteret ved å vise originalen ødelagt av Gaussisk støy med et gjennomsnitt på null og en standardavvik () på 8. viser effekten av å anvende et 32153 middelfilter. Legg merke til at støyen er mindre tydelig, men bildet er mykgjort. Hvis vi øker størrelsen på det gjennomsnittlige filteret til 52155, oppnår vi et bilde med mindre støy og mindre høyfrekvent detalj, som vist i Det samme bildet er mer alvorlig ødelagt av gaussisk støy (med et middel på null og a av 13) vises inn er resultatet av gjennomsnittlig filtrering med en 32153-kjernen. En enda mer utfordrende oppgave er gitt av viser effekten av å stryke det støyende bildet med et 32153 middelfilter. Siden pixelverdiene for skuddstøypiksler ofte er svært forskjellige fra de omgivende verdiene, har de en tendens til å vesentlig forvride pikselmiddelet beregnet av middelfilteret. Bruke et 52155 filter istedet gir Dette resultatet er ikke en signifikant forbedring i støyreduksjon, og i tillegg er bildet nå veldig uklart. Disse eksemplene illustrerer de to hovedproblemene med gjennomsnittlig filtrering, som er: En enkelt piksel med en svært representativ verdi kan betydelig påvirke gjennomsnittsverdien av alle piksler i nabolaget. Når filterkvarteret strekker seg til en kant, vil filteret interpolere nye verdier for piksler på kanten, og det vil derfor uskarpe den kanten. Dette kan være et problem hvis skarpe kanter kreves i utgangen. Begge disse problemene løses av medianfilteret. som ofte er et bedre filter for å redusere støy enn gjennomsnittet filter, men det tar lengre tid å beregne. Generelt fungerer det gjennomsnittlige filteret som et lavpassfrekvensfilter og reduserer derfor de romlige intensitetsderivatene som er tilstede i bildet. Vi har allerede sett denne effekten som en mykning av ansiktsfunksjonene i eksemplet ovenfor. Nå vurderer bildet som viser en scene som inneholder et bredere spekter av forskjellige romlige frekvenser. Etter utjevning en gang med et 32153 middelfilter får vi oppmerksom på at den lave romlige frekvensinformasjonen i bakgrunnen ikke har blitt påvirket vesentlig ved filtrering, men de (en gang skarpe) kanter av forgrunnsfaget har blitt kraftig jevnet. Etter filtrering med et 72157 filter får vi en enda mer dramatisk illustrasjon av dette fenomenet i Sammenlign dette resultatet til det som er oppnådd ved å sende et 32153 filter over det opprinnelige bildet tre ganger i vanlige variasjoner. Variasjoner på det gjennomsnittlige utjevningsfilteret som diskuteres her inkluderer Terskelverdiberegning hvor utjevning påføres underlagt betingelsen om at senterpikselverdien bare endres hvis forskjellen mellom dens opprinnelige verdi og gjennomsnittsverdien er større enn en forhåndsinnstilt grense. Dette medfører at støyen blir jevnet med et mindre dramatisk tap i bilde detaljene. Andre convolution filtre som ikke beregner gjennomsnittet av et nabolag, brukes også ofte til utjevning. En av de vanligste av disse er det gaussiske utjevningsfilteret. Interaktiv eksperiment Du kan interaktivt eksperimentere med denne operatøren ved å klikke her. Det gjennomsnittlige filteret beregnes ved hjelp av en konvolusjon. Kan du tenke på noen måter der de spesielle egenskapene til den gjennomsnittlige filterkjernen kan brukes til å øke konvolusjonen. Hva er den kompleksiteten til denne raskere konvolusjonen. Bruk en kantdetektor på bildet og merk styrken på utgangen. Påfør deretter et 32153 middelfilter til det opprinnelige bildet og kjør kantdetektoren igjen. Kommentere forskjellen. Hva skjer hvis et 52155- eller 72157-filter brukes? Det å bruke et 32153-middelfilter to ganger gir ikke det samme resultatet som å bruke et 52155-middelfilter én gang. Imidlertid kan en 52155 konvolusjonskjerne konstrueres som er ekvivalent. Hva ser denne kjernen ut som Opprett en 72157 konvolusjonskjerne som har en ekvivalent effekt på tre passerer med et 32153 middelfilter. Hvordan tror du det gjennomsnittlige filteret ville takle Gaussisk støy som ikke var symmetrisk rundt null Prøv noen eksempler. Referanser R. Boyle og R. Thomas Computer Vision: Et første kurs. Blackwell Scientific Publications, 1988, s. 32-34. E. Davies Maskin Vision: Teori, Algoritmer og Praktiske. Academic Press, 1990, kap. 3. D. Vernon Machine Vision. Prentice-Hall, 1991, kap. 4. Lokal informasjon Spesifikk informasjon om denne operatøren kan bli funnet her. Flere generelle råd om den lokale HIPR-installasjonen er tilgjengelig i Innledning for lokal informasjon. Dokumentasjon og filter (b, a, x) filtrerer inngangsdata x ved hjelp av en rasjonell overføringsfunksjon som er definert av telleren og nevnte koeffisientene b og a. Hvis a (1) ikke er lik 1., normaliserer filterkoeffisientene med a (1). Derfor må en (1) være ikke-null. Hvis x er en vektor, returnerer filteret de filtrerte dataene som en vektor med samme størrelse som x. Hvis x er en matrise, virker filteret langs den første dimensjonen og returnerer de filtrerte dataene for hver kolonne. Hvis x er et flerdimensjonalt array, så filtrerer handlinger langs den første arraydimensjonen, hvis størrelse ikke er lik 1. y filteret (b, a, x, zi) bruker innledende betingelser zi for filterforsinkelsene. Lengden på zi må være lik maks (lengde (a), lengde (b)) - 1. y filteret (b, a, x, zi, dim) virker langs dimensjonsdimensjonen. For eksempel, hvis x er en matrise, returnerer filteret (b, a, x, zi, 2) de filtrerte dataene for hver rad. y, zf filter () returnerer også de endelige betingelsene zf av filterforsinkelsene, ved hjelp av noen av de forrige syntaksene. Rasjonal overføringsfunksjon Innmatingsutgangsbeskrivelsen av filteroperasjonen på en vektor i Z-transform-domenet er en rasjonell overføringsfunksjon. En rasjonell overføringsfunksjon er av formen, Y (z) b (1) b (2) z x2212 1. b (nb1) z x2212 nb 1 a (2) z x2212 1. a (n a 1) z x2212 n a X (z). som håndterer både FIR og IIR filtre 1. n a er tilbakemelding filter rekkefølge, og n b er fremmatingsfilter rekkefølge. Du kan også uttrykke den rasjonelle overføringsfunksjonen som følgende forskjellligning, a (1) y (n) b (1) x (n) b (2) x (n x2212 1). b (nb1) x (n x2212 nb) x2212 a (2) y (n x2212 1) x2212. x2212 a (n a 1) y (n x 2212 n a). Videre kan du representere den rasjonelle overføringsfunksjonen ved å bruke sin direkte form II transponerte implementering, som i det følgende diagrammet. På grunn av normalisering, anta en (1) 1. Operasjonen av filteret ved prøve m er gitt ved tidsdomeneforskjellekvasjonene y (m) b (1) x (m) z 1 (m x 2212 1) z 1 (m) b (2) x (m) z 2 m x2212 1) x2212 en (2) y (m) x00A0x00A0 x22EE x00A0x00A0x00A0x00A0x00A0 x00A0x00A0x00A0x00A0x00A0 x22EE x00A0x00A0x00A0x00A0x00A0x00A0x00A0x00A0x00A0x00A0x00A0x00A0 x22EE Zn x2212 2 (m) b (n x2212 1) x (m) Zn x2212 1 (m x2212 1) x2212 en (n x2212 1 ) y (m) zn x2212 1 (m) b (n) x (m) x2212 a (n) y (m). Hvis du har Signal Processing Toolboxx2122, kan du designe et filter, d. bruker designfilt. Deretter kan du bruke Y-filteret (d, X) for å filtrere dataene dine. Velg ditt land

No comments:

Post a Comment