Friday, October 14, 2016

Bewegende Gemiddelde Filter Matlab Image

Geskep op Woensdag 8 Oktober, 2008 20:04 Laas Opdateer op Donderdag, Maart 14, 2013 01:29 Geskryf deur Batuhan Osmanoglu Hits: 38925 bewegende gemiddelde In Matlab myself dikwels ek 'n behoefte aan die gemiddeld van die data wat ek het om die geraas 'n bietjie te verminder bietjie. Ek het n paar funksies te doen presies wat ek wil hê, maar matlabs gebou in filter funksie werk redelik goed sowel. Hier Siek skryf oor 1D en 2D gemiddeld van data. 1D filter kan verwesenlik word deur die filter funksie. Die filter funksie vereis ten minste drie insette parameters: die teller koëffisiënt vir die filter (b), die deler koëffisiënt vir die filter (a), en die data (X) natuurlik. 'N loop gemiddelde filter kan gedefinieer word deur eenvoudig: Vir 2D data kan ons die Matlabs filter2 funksie gebruik. Vir meer inligting oor hoe die filter werk, kan jy tik: Hier is 'n vinnige en vuil implementering van 'n 16 deur 16 bewegende gemiddelde filter. Eerstens moet ons die filter te definieer. Sedert alles wat ons wil hê, is gelyk bydrae van alle bure kan ons net gebruik om die kinders funksie. Ons verdeel alles met 256 (1616), aangesien ons nie wil hê dat die algemene vlak (amplitude) van die sein verander. Om die filter kan ons net die volgende Hier sê van toepassing is die resultate vir fase van 'n Kong interferogram. In hierdie geval Range is in Y-as en Azimuth is gekarteer op X-as. Die filter was 4 pixels wyd in Range en 16 pixels wyd in Azimuth. Teken SearchThe Scientist en Ingenieurs Guide to Digital Signal Processing Deur Steven W. Smith, Ph. D. Soos die naam aandui, die bewegende gemiddelde filter bedryf deur gemiddeld 'n aantal punte van die insetsein aan elke punt in die uitsetsein produseer. In vergelyking vorm, dit is geskrywe: Waar is tog die insetsein, is die uitset sein, en M is die aantal punte in die gemiddelde. Byvoorbeeld, in 'n 5 punt bewegende gemiddelde filter, punt 80 in die uitsetsein word gegee deur: As 'n alternatief, kan die groep punte van die insetsein simmetries gekies om die uitset punt: Dit stem ooreen met die verandering van die opsomming in vergelyking . 15-1 van: J 0 tot M -1 aan: J - (M -1) / 2 tot (m -1) / 2. Byvoorbeeld, in 'n 10 punt bewegende gemiddelde filter, die indeks, j. kan loop 0-11 (een kant gemiddelde) of -5 tot 5 (simmetriese gemiddelde). Simmetriese gemiddelde vereis dat M wees 'n onewe getal. Programmering is 'n bietjie makliker met die punte op slegs een kant egter hierdie produseer 'n relatiewe verskuiwing tussen die inset en uitset seine. Jy moet besef dat die bewegende gemiddelde filter is 'n konvolusie gebruik van 'n baie eenvoudige filter kern. Byvoorbeeld, 'n 5 punt filter het die filter kern; 82300, 0, 1/5, 1/5, 1/5, 1/5, 1/5, 0, 08230. Dit is die bewegende gemiddelde filter is 'n konvolusie van die insetsein met 'n vierkantige pols met 'n oppervlakte van een. Tabel 15-1 toon 'n program om die bewegende gemiddelde filter. The beste manier om dit te doen (in my opinie) te implementeer sou wees om 'n ronde-buffer gebruik om jou foto's te stoor. In 'n circular-, of ring-buffer, is die oudste data element in die skikking oorskryf deur die nuutste element gestoot in die skikking. Die basiese beginsels van die maak van so 'n struktuur word in die kort Math Works video Implementering van 'n eenvoudige omsendbrief buffer. Vir elke iterasie van julle hoof lus wat handel oor 'n enkele beeld, net laai 'n nuwe beeld in die omsendbrief-buffer en dan gebruik MATLAB se ingeboude in die gemiddelde funksie om die gemiddelde doeltreffend te neem. As jy nodig het om 'n venster funksie is van toepassing op die data, dan maak 'n tydelike kopie van die rame vermenigvuldig met die venster funksie en neem die gemiddelde van die kopie by elke iterasie van die lus. beantwoord 6 Augustus 12 aan 10:11 bereken 'n soort van bewegende gemiddelde vir elk van die 10 bands oor al jou beelde. Hierdie reël bereken 'n bewegende gemiddelde van meanvalue oor jou beelde: Vir beide jy sal wil hê om 'n buffer struktuur wat net hou die laaste 10 beelde by te voeg. Om dit te vereenvoudig, kan jy ook hou net al in die geheue. Hier is 'n voorbeeld vir yout: Verandering hierdie lyn: (Voeg een dimensie) en hierdie verandering: Toe te gebruik Jy sal sth doen vertoon. soortgelyk vir meanvalue geantwoord 6 Augustus 12 by 14:19 Jou Antwoord 2016 stapel Exchange, IncMean filter, of gemiddelde filter Kategorie. Digitale sein en beeldverwerking (DSP en DIP) die ontwikkeling van sagteware. Abstract. Die artikel is 'n praktiese gids vir gemiddelde filter, of gemiddelde filter begrip en implementering. Artikel bevat teorie, C bron-kode, ontwikkeling instruksies en monster aansoek. 1. Inleiding tot bedoel filter, of gemiddelde filter Gemiddelde filter. of gemiddelde filter is 'n klein venster filter lineêre klas, wat sein (Beeld) stryk. Die filter werk as 'n lae-slaag een. Die basiese idee agter filter is vir enige element van die sein (Beeld) neem 'n gemiddelde oor sy omgewing. Om te verstaan ​​hoe dit gedoen word in die praktyk, laat ons begin met venster idee. 2. Filter venster of masker Kom ons dink, moet jy 'n brief en wat jy sien in die teks beperk deur gat in spesiale stensil soos hierdie te lees. So, is die resultaat van lees is klank t. Ok, laat ons die brief weer lees, maar met die hulp van 'n ander stensil: Nou is die gevolg van lees t is klank 240. Kom ons maak die derde drie: Nou kan jy lees brief t as klank 952. Wat gebeur hier om te sê dat in wiskundige taal, maak jy 'n operasie (lees) oor element (brief t). En die gevolg (klink) is afhanklik van die element buurt (letters langs t). En dit stensil, wat help om af te haal element omgewing, is die venster Ja, venster is net 'n stensil of patroon, waardeur jy kies die element buurt 0151 'n stel van elemente rondom die gegewe een 0151 om jou te help besluit te neem. 'N Ander naam vir 'n filter venster is masker 0151 masker is 'n stensil, wat elemente wat ons nie aandag aan skuil. In ons voorbeeld egter die element is ons aktief op geposisioneer is op linker by die venster uit, in die praktyk sy gewone posisie is die middelpunt van die venster. Kom ons kyk 'n paar venster voorbeelde. In een dimensie. Fig. 4. venster of masker van grootte 5 in 1D. In twee dimensies. Fig. 5. venster of masker van grootte 3times3 in 2D. In drie dimensies. Dink oor die bou. En nou mdash oor ruimte in die gebou. Die kamer is soos 3D venster, wat sny 'n paar deelruimte van die hele ruimte van die gebou. Jy kan 3D venster in volume (Voxel) beeldverwerking vind. 3. Verstaan ​​beteken filter Nou laat ons sien, hoe om 'n gemiddelde ldquotake regoor elemente neighborhoodrdquo. Die formule is eenvoudig 0151 som elemente en verdeel die som van die aantal elemente. Byvoorbeeld, laat ons bereken 'n gemiddelde vir die geval, uitgebeeld in Fig. 7. Fig. 7. Neem 'n gemiddelde. En dit is al. Ja, ons het nou net gefiltreerde 1D sein deur gemiddelde filter Laat Ons mense maak CV en skryf stap-vir-stap-instruksies vir die verwerking deur gemiddelde filter. Beteken filter, of gemiddelde filter algoritme: Plaas 'n venster oor element Neem 'n gemiddelde 0151 som elemente en verdeel die som deur die aantal elemente. Nou, wanneer ons die algoritme, is dit tyd om 'n paar kode mdash skryf laat ons afkom tot programmering. 4. 1D beteken filter programmering In hierdie afdeling het ons die ontwikkeling 1D beteken filter met venster grootte 5. Kom ons 1D sein van lengte N as insette. Die eerste stap is venster plasing 0151 ons dat deur die verandering van die indeks van die voorste element: Gee aandag, dat ons besig is met die derde element en afwerking met die laaste, maar twee. Die probleem is kan ons nie begin met die eerste element, want in hierdie geval die linkerkant van die venster filter is leeg. Ons sal onder bespreek, hoe om die probleem op te los. Die tweede stap is om die gemiddelde, ok: Nou, laat ons skryf die algoritme as funksie: Tipe element kan gedefinieer word as: 5. Behandeling kante Vir al venster filters daar 'n probleem. Dit is rand behandeling. As jy venster oor eerste (vorige) element plaas, sal die linkerkant (regs) deel van die venster leeg wees. Om die gaping te vul, moet sein verleng. Vir gemiddelde filter is daar 'n goeie idee om sein of beeld simmetries te brei, soos volg: So, voordat hy sein na ons gemiddelde filter funksie die sein moet uitgebrei word. Kom ons skryf die omhulsel, wat al die voorbereidings maak. Soos jy kan sien, ons kode in ag neem 'n paar praktiese kwessies. In die eerste plek gaan ons ons insette parameters 0151 sein moet nie NULL wees, en sein lengte moet positief wees: Tweede stap 0151 gaan ons geval N1. Hierdie geval is spesiaal daarby gebring weens te bou uitbreiding ons ten minste twee elemente nodig. Vir die sein van 1 element lengte die resultaat is die sein self. Sowel aandag, ons gemiddelde filter werk in woonplek, as uitset parameter gevolg is NULL. Kom ons geheue toeken vir sein uitbreiding. En kyk geheue allocation. Moving-Gemiddelde Filter van Verkeer Data Hierdie voorbeeld wys hoe om verkeersvloei data glad met behulp van 'n bewegende gemiddelde filter met 'n 4-uur gly venster. Die volgende verskilvergelyking beskryf 'n filter wat gemiddeldes die huidige uur en die drie vorige uur van data. Voer die verkeer data en die kolom van voertuig tel toewys aan die vektor x is. Skep die filter koëffisiënt vektore. Bereken 4-uur bewegende gemiddelde van die data, en plot beide die oorspronklike data en die gefilterde inligting. MATLAB en Simulink is geregistreerde handelsmerke van The MathWorks, Inc. Sien www. mathworks / handelsmerke vir 'n lys van ander handelsmerke in besit van die MathWorks, Inc. Ander produk of handelsmerk name is handelsmerke of geregistreerde handelsmerke van hul onderskeie eienaars. Kies jou land


No comments:

Post a Comment