Privacy Policy Cookie Policy Terms and Conditions Брза Фуријеова трансформација - Википедија

Брза Фуријеова трансформација

Из пројекта Википедија

Брза Фуријеова трансформација (често се означава као FFT - fast fourier transformation, енг.) јесте алгоритам за "брзо" израчунавање вредности дискретне Фуријеове трансформације. Убрзање у односу на уобичајен поступак израчунавања дискретне Фуријеове трансформације постиже се избегавањем поновног израчунавања израза који се међусобно негирају. Алгоритам се приписује Џејмсу В. Кулију (James W. Cooley) и Џону В. Тукију (John W. Tukey) који су га објавили 1965. године. Међутим, Карл Фридрих Гаус га је развио већ 1805. да би израчунао путању астероида Палас и Јуно. Притом су многе верзије развијене и пре Кулијеве и Тукијеве варијанте. После су се појавила многа побољшања и варијације.

За брзу Фуријеову трансформацију постоји и алгоритам у супротном смеру - инверзна брза Фуријеова трансформација.

[уреди] Неформалан опис Кули-Туки алгоритма

Кули-Туки алгоритам се базира на идеји подели-па-владај (divide-and-conquer, енг.). Предуслов за његово извршавање је да број тачака (тачке измерене за неки сигнал, на пример) на којима се врши трансформација буде степен двојке. Како често можемо сами да изаберемо колико тачака хоћемо да узмемо, ово и не представља велику препреку.

ДФТ израчунавамо тако што наше тачке (вектор) прво поделимо на два вектора, један који одговара компонентама изворног вектора са парним индексима, а други са непарним. Онда израчунамо ДФТ оба вектора и спојимо резултате. Притом користимо особине јединичног корена Фуријеове матрице. После понављамо рекурзивно поступак. Тиме можемо да ДФТ на крају израчунамо према сложености O(log(n)) у времену.

[уреди] Формалан опис Кули-Туки алгоритма

Присетимо се дефиниције дискретне Фуријеове трансформације:

\hat c_k = \sum_{j=0}^{N-1} e^{-2\pi \mathrm{i}\cdot\frac{jk}{N}}\cdot c_j за k=0,\dots,N-1

где је c = (c_0, \dots, c_{N-1}) вектор који желимо да трансформишемо, а \hat c тај вектор Фурије трансформисан.

Дефинишимо N' = N'' = \frac{N}{2}.

Потом дефинишемо вектор са парним индексима:

c'_0 = c_0, c'_1 = c_2, \dots, c'_{N'-1} = c_{N-2}

и означимо његову ДФТ као:

\hat c'_0, \hat c'_1, \dots,\hat c'_{N'-1}

те вектор са непарним индексима:

c''_0 = c_1, c''_2 = c_3, \dots, c''_{N''-1} = c_{N-1}

и његову ДФТ:

\hat c''_0, \hat c''_1, \dots, \hat c''_{N''-1}

Следи спајање:

\begin{matrix} \hat c_k & = & \sum_{j=0}^{N-1} e^{-2\pi \mathrm{i}\cdot\frac{jk}{N}}\cdot c_j \qquad \ \ \qquad \ \ \ \ \qquad \ \ \ \ \qquad \ \ \ \ \qquad \ \ \ \\ \\  & = & \sum_{j=0}^{N-1} e^{ - 2 \pi \mathrm{i} \frac{(2j)k}{N} } \cdot c_{2j} +  \sum_{j=0}^{\frac{N}{2}-1} e^{ - 2 \pi \mathrm{i} \frac{(2j+1)k}{N} } \cdot c_{2j+1} \\ \\  & = & \sum_{j=0}^{N'-1} e^{ -2\pi \mathrm{i}\cdot\frac{jk}{N'}}\cdot c'_j + \sum_{j=0}^{N''-1} e^{ -2\pi \mathrm{i}\cdot\frac{jk}{N''}}\cdot c''_j \\ \\  & = & \begin{cases}   \hat c'_k + e ^ {-2\pi \mathrm{i} \frac{k}{N} }\cdot \hat c''_k & \mbox{kada }k < n' \\ \hat c'_{k-N'} - e ^ { -2\pi \mathrm{i} \frac{k-N''}{N} } \cdot \hat c''_{k-N''} & \mbox{kada }k \ge n' \end{cases}  \end{matrix}

Напомена: N' = N'' = \frac{N}{2}, али се ради лакшег разумевања наводи различито!

Често смо у пракси заинтересовани за конкретне фреквенције. Уводимо нотацију:

\omega_n:=2\pi\frac{n}{NT}, n=1-K,..., N-K, K је негде у близини \frac{N}{2}, а T периода нашег мерења.

Онда је брза фуријеова трансформација за одређену фреквенцију:

\hat c(\omega_k) = \begin{cases}  \hat c'( \omega_k) + e ^ {-\mathrm{i} \omega_k T }\cdot \hat c''(\omega_k) & \mbox{kada } k < 0 \\ \hat c'(\omega_{-k}) - e ^ { -\mathrm{i} \omega_k ( 1 - \frac{NT}{2} ) } \cdot \hat c''(\omega_{-k}) & \mbox{kada }k \ge 0 \end{cases}
THIS WEB:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2006:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu