Vlákno názorů k článku Základní funkce pro zpracování signálů v knihovně SciPy: FFT a její varianty od radioing - Jen pro matematicke upresneni. V teorii 1D signalove...

  • 7. 4. 2026 22:17

    radioing

    Jen pro matematicke upresneni. V teorii 1D signalove analyzy rozlisujeme ctyri zakladni varianty Fourierova rozkladu/tran­sformace, a to podle toho, zda je signal v casove domene spojity nebo diskretni a zda je v casove domene omezeny nebo neomezeny:

    A. Spojity, neomezeny -> Fourierova transformace (Fourier Transform, FT)
    B. Spojity, omezeny -> Fourierova rada (Fouries Series, FS)
    C. Diskretni, neomezeny -> Fourierova transformace diskretni v case (Discrete Time Fourier Transform, DTFT)
    D. Diskretni, omezeny -> diskretni Fourierova transformace (Discrete Fourier Transform, DFT)

    Tomu v kmitoctove domene odpovida prislusny charakter vysledku, tedy neomezenost (signaly spojite v case) nebo omezenost (diskretni v case) ve spektru a spojitost (neomezeno v cas. domene) nebo diskretnost (omezenost v cas. domene) spektra.

    Pri pocitacovem zpracovani signalu jsme schopni zpracovat pouze omezene mnozstvi vzorku signalu, a tedy korektne vypocitat pouze posledni variantu - diskretni Fourierovu transformaci (DFT). Snaha o vypocet variant A, B a C nad obecnym signalem vede na zvysovani poctu vzorku, jejich zahustovani, nebo vyuziti nejake zname vlastnosti signalu (periodicita, omezenost spektra shora) popr. jejich kombinace, ale vzdy se ve vysledku jedna o aproximativni vypocet pomoci DFT.

    Korektnost diskretizace v casove domene (ADC) se snazime zajistit predzpracovanim analogoveho signalu (filtrace -> tj. zamezeni aliasingu, vzorkovaci teorem atd.), omezeni v casove oblasti se zase snazime napravit vhodnou volbou vyrezoveho okna, kdy na jedne strane proste vyriznuti 'obdelnikem' muze zpusobit prosakovani mezi spektralnimi carami az do urovne -13 dB (sin(x)/x), naopak jina okna (Kaiser-Bessel, Harrisova okna,...) mohou potlacit postranni laloky spektralnich obrazu oken az o mnoho desitek dB ovsem za cenu 'rozliti' puvodni spektralni cary do nekolika sousednich car.

    Rychla Fourierova transformace (Fast Fourier Transform, FFT) je pouze algoritmus, jak provest vypocet DFT rychleji, tj. s pomoci mensiho poctu nasobeni a scitani (tedy efektivneji, nez jak je naznaceno v prikladu vypoctu zde v clanku). Poprve ho pred cca 200 lety objevil C. F Gauss a znovu objevili v roce 1964 Cooley&Tukey (manuscript zde: https://web.stanford.edu/class/cme324/classics/cooley-tukey.pdf).
    Oblibena (a nejefektivnejsi) specialni varianta FFT je pocitana nad poctem 2^N vzorku, ale obecnejsi varianta je zalozena na rozkladu N = n*m, kde je treba provest n DFT nad m vzorky (princip lze retezit, coz u 2^N vede az k vypoctovemu primitivu nad dvema vzorky - znamemu motylku z vysokoskolskych skript). V pripade prvociselnych poctu vzorku se pak uchylujeme k vypoctu pomoci cyklicke konvoluce.

  • 7. 4. 2026 22:36

    Pavel Tišnovský
    Zlatý podporovatel

    Díky za doplnění.

    Já jsem chtěl ještě v článku vypíchnout praktické rozdíly mezi FFT a DCT, vlastně už jsem se k tomu nedostal (ale možná je to trošku zřejmé z výsledků).