Vinnaren i pepparkakshustävlingen!
2009-12-17, 05:35
  #1
Medlem
definedinfinitys avatar
Vad är egentligen skillnaden mellan cirkulär faltning och en vanlig faltning? Fungerar det förresten bara att transformera periodiska funktioner med DFT? Jag har svårt att förstå mig på det där..

Tacksam för svar!
Citera
2009-12-17, 08:18
  #2
Medlem
Citat:
Ursprungligen postat av definedinfinity
Vad är egentligen skillnaden mellan cirkulär faltning och en vanlig faltning?
Har förvisso inte hört talas om cirkulär faltning tidigare, men utgår från att det innebär att man låter intervallet "wrappa" runt, så att om något försvinner ut vid ena änden, så kommer det in vid andra änden. Detta är naturligt när man begränsar periodiska funktioner till en period.


Citat:
Ursprungligen postat av definedinfinity
Fungerar det förresten bara att transformera periodiska funktioner med DFT? Jag har svårt att förstå mig på det där..
DFT används så vitt jag vet endast på ändliga diskreta intervall. Funktioner på sådana mängder kan knappast kallas vare sig periodiska eller icke periodiska, men det är ändå naturligt att betrakta dem som approximationer av en period av en periodisk funktion.
Citera
2009-12-17, 11:19
  #3
Medlem
skit_i_dets avatar
Citat:
Ursprungligen postat av manne1973
Har förvisso inte hört talas om cirkulär faltning tidigare, men utgår från att det innebär att man låter intervallet "wrappa" runt, så att om något försvinner ut vid ena änden, så kommer det in vid andra änden.
Det stämmer.

Citat:
Ursprungligen postat av definedinfinity
Jag har svårt att förstå mig på det där..
För att ta ett konkret exempel: Faltning (filtrering) i tidsdomänen motsvarar som bekant multiplikation i frekvensdomänen. När man utför digital filtrering vill man ibland utnyttja detta för att göra beräkningsbesparingar. Förfarandet går till på så sätt att man delar in signalen man vill filtrera i block som man sedan beräknar FFTn av, multiplicerar med FFTn av filtret och till sist tar invers-FFT av resultatet. Ett litet problem är dock att pga. blockindelningen så motsvarar multiplikation i DFT/FFT-domänen cirkulär faltning i tidsdomänen - man får med andra ord en massa "skräp" som "wrappas" runt och förstör utsignalen i tidsled. För att råda bot på detta används vanligtvis en av två metoder: overlap save (http://en.wikipedia.org/wiki/Overlap-save_method) eller overlap add (http://en.wikipedia.org/wiki/Overlap-add_method) som i korthet går ut på att ta dubbelt så långa (överlappande eller utfyllda med 0:or) block och addera/kasta bort hälften av resultatet.

Lite mer om cirkulär faltning http://en.wikipedia.org/wiki/Circular_convolution.
Citera
2009-12-17, 11:37
  #4
Medlem
Bromsklosss avatar
Citat:
Ursprungligen postat av definedinfinity
Fungerar det förresten bara att transformera periodiska funktioner med DFT?

Så här ska man nog se det (jag ska försöka hålla tungan rätt i mun så jag inte säger fel):

Diskret Fouriertransform (DFT) appliceras på ändliga talföljder och ger en lika lång ändlig följd av diskreta frekvenskomponenter.

Tidsdiskret Fouriertransform (DTFT) appliceras på oändliga talföljder och ger ett kontinuerligt spektrum av frekvenser.

Tänk dig nu att vi tar en periodisk talföljd och applicerar DTFT på denna. Då kommer vi få ett spektrum som har Diracpulser på vissa frekvenser och i övrigt är noll. Tog vi nu en enskild period av talföljden och applicerade DFT på denna skulle vi få frekvenskomponenter som var och en motsvarade en av nämnda Diracpulser.

Sådant är sambandet mellan DTF av en ändlig talföljd och DTFT av motsvarande periodiska talföljd.
Citera
2009-12-17, 17:59
  #5
Medlem
definedinfinitys avatar
Tack så mycket för era svar! De gav mer klarhet.

Har suttit och kämpat med lite kod för att baka in nollor i matlab nu för att slippa det oönskade "skräpet" vid faltningen.

Jag kollade igenom härledningen då man går från kontinuerlig FT - DFT igen och det kanske trillade ner någon polett ändå. *hoppas*
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback