Wednesday 8 November 2017

Matlab Bevegelig Gjennomsnitt Filter 2d


Jeg må teste noen grunnleggende bildebehandlingsteknikker i Matlab. Jeg må teste og sammenligne spesielt to typer filtre: gjennomsnittlig filter og medianfilter. For å jevne bildet ved hjelp av medianfiltrering, er det en flott funksjon medfilt2 fra bildebehandlingsverktøyboks. Er det noen lignende funksjon for gjennomsnittlig filter Eller hvordan du bruker filter2-funksjonen til å lage det gjennomsnittlige filteret En av de viktigste tingene for meg er å ha mulighet til å sette filterets radius. Dvs. for medianfilter, hvis jeg vil ha 3 x 3 radius (maske), bruker jeg bare Jeg vil gjerne oppnå noe som ligner på gjennomsnittlig filter. spurte nov 15 09 kl 16:12 user8264: Jeg har ikke tilgang til boka akkurat nå, men vanligvis gir Gaussisk kjernen en mykere utjevningseffekt og har en tendens til å bevare kantene bedre enn et middelfilter av samme størrelse. Tenk på frekvensresponsen til lavpassfilteret i begge tilfeller. Her er en side med en god forklaring: homepages. inf. ed. ac. ukrbfHIPR2gsmooth. htm ndash Amro Aug 1 14 kl 9: 48Betatt onsdag 08 oktober 2008 20:04 Sist oppdatert torsdag 14. mars 2013 01:29 Skrevet av Batuhan Osmanoglu Hits: 41399 Flyttende Gjennomsnitt I Matlab Ofte finner jeg meg selv i behov av å gjennomsnittsføre dataene jeg må redusere støyen litt. 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. Ved hjelp av MATLAB, hvordan kan jeg finne tre-dagers glidende gjennomsnitt av en bestemt kolonne av en matrise og legge til glidende gjennomsnitt i den matrisen jeg prøver å beregne 3 - dags glidende gjennomsnitt fra bunn til toppen av matrisen. Jeg har oppgitt koden min: Gitt følgende matrise a og maske: Jeg har prøvd å implementere conv kommandoen, men jeg mottar en feil. Her er conv kommandoen jeg har prøvd å bruke på 2. kolonne av matrise a: Utgangen jeg ønsker er gitt i følgende matrise: Hvis du har noen forslag, vil jeg sette stor pris på det. Takk for kolonne 2 i matrisen a, beregner jeg 3-dagers glidende gjennomsnitt som følger og plasserer resultatet i kolonne 4 i matrise a (jeg omdøpt matrise a som 39desiredOutput39 bare for illustrasjon). 3-dagers gjennomsnittet av 17, 14, 11 er 14 det 3-dagers gjennomsnittet på 14, 11, 8 er 11 3-dagers gjennomsnittet av 11, 8, 5 er 8 og 3-dagers gjennomsnittet på 8, 5, 2 er 5. Det er ingen verdi i de nederste 2 radene for fjerde kolonne fordi beregningen for 3-dagers glidende gjennomsnitt begynner nederst. Den 39 ugyldige 39-utgangen vil ikke bli vist før minst 17, 14 og 11. Forhåpentligvis er dette fornuftig ndash Aaron 12. juni kl 13:28 Generelt vil det hjelpe hvis du vil vise feilen. I dette tilfellet gjør du to ting feil: Først må fellingen din divideres med tre (eller lengden på det bevegelige gjennomsnittet). For det andre, merk størrelsen på c. Du kan ikke bare passe inn i en. Den typiske måten å få et bevegelige gjennomsnitt på, ville være å bruke samme: men det ser ikke ut som du vil. I stedet er du tvunget til å bruke et par linjer:

No comments:

Post a Comment