Fast Fourier Transform iliti FFT

Fast Fourier Transform iliti FFT

offline
  • Pridružio: 05 Mar 2008
  • Poruke: 4

Jel zna neko da pojednostavljeno objasni šta je u stvari FFT i njegovu primenu na obradu zvuka???



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 30 Maj 2005
  • Poruke: 1014
  • Gde živiš: Mbabane

Huh ... davno bilo ... imas tonu toga na googletu.

Furijeova transformacija ili FT se koristi da bi se iskoristila dualnost funkcija izmedju dva domena, vremenskog i frekventnog.

Samom furijeovom transformacijom se signal iz vremenskog prebacuje u frekventni domen. Sve to je vrlo zgodno jer se npr. operacija konvolucije u vremenskom svodi na obicno mnozenje u frekventnom. Dakle prebacivanjem u frekventni domen se pojednostavljuje izvodjenje operacija nad signalima (npr. konvolucija, koja je u vremenskom domenu predstavljana integralom, zahtjeva ogroman broj mnozenja i sabiranja, a u fr. domenu imamo samo mnozenje), cime se znatno stedi na resursima.

Brza furijeova transformacija ili FFT je jedan od algoritama za furijeovu transformaciju. Leptir strukturama koje se formiraju nad odbircima signala se znatno uproscava racun, odn. transformacija se svodi na algoritam znatno manje funkcije slozenosti, sto znaci brze!

http://www.cmlab.csie.ntu.edu.tw/cml/dsp/training/coding/transform/fft.html

Dakle, kada radis neku obradu recimo zvuka, zvuk se najprije prebaci u frekventni domen kolima za FFT (ako su uradjena hardverski to ide super brzo), a onda sa njim u tom domenu radis sve sto trebas (sto opet zbog gore objasnjenog ide mnogo lakse nego u vremenskom domenu), i onda kada zavrsis posao, signal ide na kolo IFFT, odnosno inverzne FFT, cime se vraca u vremenski domen.

Posto si stavio u C/C++, pretpostavljam da treba da iskodujes nesto vezano za FFT ... a najlaksi nacin da to uradis je posmatranjem leptir struktura koje imas na linku, i uocavanjem zavisnosti rasporeda indeksa odbiraja koji ulaze u te strukture. Nije da je lak posao, ali sljaka Smile

Ovo sam izvukla iz glave po sjecanju, ali nadam se da ce bar donekle pomoci.

Evo i neki ppt na srpskom, a i ovde su pokazane dualnosti operacija.

https://www.mycity.rs/must-login.png



offline
  • Pridružio: 05 Mar 2008
  • Poruke: 4

pa konkretno treba da ucitam WAV pesmu i da je pretvorim u homofonu MIDI melodiju...
e da btw kako se upopste ucitava pesma u C-u ili C++-u ili C#-u???
p.s. ne mogu da otvorim ovaj pptx...

offline
  • Pridružio: 30 Maj 2005
  • Poruke: 1014
  • Gde živiš: Mbabane

Mr. Green uarrrrgh, pptx je ppt format ali za Word 2007, zeznula sam se kada sam uradila save, popravicu link sutra Smile

Citat:
e da btw kako se upopste ucitava pesma u C-u ili C++-u ili C#-u???


Nekako presiroko pitanje. Pokusaj da malo pojasnis sa cim radis ... jel ti bas treba da radis neki program u C-ovima ili ...

Ja sam svojevremeno muzicke fajlove sredjivala u programu koji se zove audacity -
http://audacity.sourceforge.net/about/
http://audacity.sourceforge.net/download/source

offline
  • Pridružio: 05 Mar 2008
  • Poruke: 4

pa treba da pisem program u C-u ili C++-u ili C#-u koji ce ucitanu pesmu da pretvori u homofonu MIDI...

offline
  • Pridružio: 30 Dec 2007
  • Poruke: 4759
  • Gde živiš: Niš

skoro niko ne moze da otvori pptx Sad

iako su napravili konverter u odp ,rezultati nisu bas nesto ....
http://www.oooninja.com/2008/01/convert-openxml-docx-etc-in-linux-using.html


https://www.mycity.rs/must-login.png

Ali su bar po iso-standardu !
*seamlessley vrsi transkodiranje dokumenata

offline
  • Pridružio: 30 Maj 2005
  • Poruke: 1014
  • Gde živiš: Mbabane

Popravila sam ppt

offline
  • Pridružio: 30 Dec 2007
  • Poruke: 4759
  • Gde živiš: Niš

http://en.wikipedia.org/wiki/Fast_Fourier_transform
http://en.wikipedia.org/wiki/Spectral_music

za konkretnu primenu bi mogla da se upotrebi ova implementacija
http://www.fftw.org/links.html
(ima dll za vindovs ,koji treba da se ubaci u c++,ili se kompilira za linuks)

moglo bi da bude od koristi i proucavanje source koda za audacious (gorenaveden)

i ovde jedan malecki program koji je jednostavan i linkuje se uz ovaj fftw
http://www.employees.org/~stannous/gstring.html
(koristan za ucenje,bar tako izgleda)
*ali se linkuje uz libfftw2 ne libfftw3
nesto nece..trazi drfftw Sad i'm confused..

na linuksu obicno je ovaj fftw u vecim distribucijama,samo treba da se iz repoa
skinu i devel verzije(na pclos se nalazi u synapticu ,upravo sam proverio)

Ko je trenutno na forumu
 

Ukupno su 1079 korisnika na forumu :: 34 registrovanih, 3 sakrivenih i 1042 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 357magnum, Apok, asdfjklc, Avalon015, Bluper, bojankrstc, bokisha253, branko7, Bubimir, darios, Denaya, dule10savic, ILGromovnik, Koridor, Kubovac, Lucije Kvint, madza, mačković, Metanoja, micoboj, Milos ZA, Misirac, nebkv, Neutral-M, Panter, rikirubio, rodoljub, sap, SlaKoj, Stanlio, Stoilkovic, zdrebac, 1107, 2001