FFW Raskest Filtreringsoversikt i Vesten - Matlab kildekode

L

luigirosa

Guest
FFW Raskest Søk i Vesten

http://www.advancedsourcecode.com/ffw.asp

Den FFW pakken er et FFT-basert algoritme for en rask 2D convolution bruker overlapper legge metode.Den overlapper legge metoden er basert på de grunnleggende teknikk i DSP: brytes signalet inn enkle komponenter, prosess hver av komponentene i en del nyttig måte, og recombine de behandlet komponenter i det endelige signalet.Dette er mulig fordi convolutional operatør er lineære.Den FFW pakken fungerer på samme måte som fftfilt funksjon (Matlab Image Processing Toolbox), men i en dypere måte: alle mulige lengder for vektorer vurderes og ikke bare lengder som er krefter to.Dette er høyst nødvendig siden FFTW pakken (for mer informasjon besøk http://www.fftw.org) omfatter codelets optimaliseres også for andre faste størrelser.Codelets produseres automatisk av FFTW codelet generator: du kan legge til dine egne codelets og re-beregne kjøres ganger for hver FFT.Utførelsen ganger på:

FFT av fast 1D vektorer
FFT av komplekse 1D vektorer
IFFT av komplekse 1D vektorer
er beregnet med skriptet papiclock.m fra lengde N = 1 til lengde N = 2048.Disse tidene er determinated bruker Papi for Matlab (tilgjengelig her eller på http://icl.cs.utk.edu/papi).En 2D FFT (se Matlab kommandoen fft2) er decomposed i flere 1D FFTs:
the FFT operatør for en n-dimensjonal array kan faktisk være splitted i flere 1-dimensjonale FFTs av monodimensional arrays.Den FFW algoritmen velger automatisk som er det beste valget (første dimensjonen, andre dimensjonen og beste lengder for overlapping legge metoden) og kalkulerer 2D convolution.

Den FFW pakken kan enkelt brukes til å forbedre hastigheten forestillinger til:
2D convolution (Matlab funksjon conv2)
2D-filtrering (Matlab funksjon filter2)
2D kryss-korrelasjon (Matlab funksjon xcorr2)
Normaliserte kryss-korrelasjon (Matlab funksjon normxcorr2)Hvordan FFW pakken arbeid?
For å finne de beste parametrene for overlapping legge metoden en uttømmende søk på 2D matriser ville ikke være mulig.Beregningsformelen kostnaden for FFT2 operatør gjøres decomposing det inn beregningsformelen kostnader av to serie FFTs på monodimensional arrays.For eksempel, hvis du vil beregne FFT2 beregningsformelen kostnad ved hjelp av en matrise N x M som innspill, vil du utføre følgende sum: N * kostnader (FFT (M)) M * kostnader (FFT (N)), der prisen ( FFT (X)) er beregningsformelen kostnaden for FFT operatør bruker som input en vektor med lengde X. beregningsformelen kostnaden for FFT for en reell vektoren er generelt forskjellige fra kostnadene for FFT for en kompleks vektoren.Av denne grunn mer enn ett valg er mulig, kan du velge det første dimensjonen langs som du kan bruke FFT operatør.Tilsvarende betraktninger kan gjøres for IFFT operatør.

Etter minimum beregningsformelen kostnaden er funnet en finere tuning er mulig: det FFW algoritme gjør en kvasi-uttømmende søk ved hjelp av en optimalisert algoritme.Den finjustere alternativet krever mye tid, men det anbefales for høy forestillinger FFT-basert filtrering.Selvfølgelig, dette valget har betydning bare når du må gjøre flere convolution produkter.

Hvis både skriving Bildene er ekte FFW algoritmen bruker 'symmetrisk' alternativet når du bruker IFFT operatør.Den optimaliserte parametere FFW algoritme avhenger kun på størrelser av input matriser og deres verdier (reelle eller komplekse).Hvis det samme filteret skal brukes på flere bilder, dets FFT2 verdi kan bestemmes bare én gang, sparer beregningsformelen tid.I dette tilfellet (samme filter brukes på flere bilder) fastsettelse av optimalisert parameteren må ikke ta med beregningsformelen pris på slike drift, siden det er gjort bare én gang.FFW algoritme kan også arbeide i gang domene: dette valget er nødvendig for lite filter kjernen, ved hjelp av standard conv2 innebygd Matlab funksjon.

http://www.advancedsourcecode.com/ffw.asp

 

Welcome to EDABoard.com

Sponsor

Back
Top