logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Krókoterminowe FFT / Jak określić max amplitudę modułu spektrum?

nuo 04 Maj 2011 18:14 1719 5
REKLAMA
  • #1 9469756
    nuo
    Poziom 2  
    Witam,

    Napisałem program, który wykonuje krótkoterminową FFT z sygnału audio mowy (całkowity sygnał dzielony jest na ramki, każdą ramkę mnożę prze okno Hamminga i ostatecznie wykonuję na niej FFT).

    Sygnał w dziedzinie czasu, to sygnał audio 16-bit/44.1kHz/mono, więc poziomów kwantyzacji jest od -32768 do 32768. Te poziomy normalizuję do przedziału -1/1, więc jestem pewien, że maksymalna wartość próbki jaka może wystąpić, to -1 bądź 1.

    Moje pytanie natomiast brzmi w jaki sposób określić maksymalną możliwą amplitudę prążka widma powstałego z przekształcenia tego sygnału (program generuje wykres dla widm uzyskanych z ramek i chciałbym móc na stałe określić zakres na osi y)? Wątpię, żeby nie dało się tego określić... sęk w tym, że nie wiem w jaki sposób.

    Pozdrawiam!
  • REKLAMA
  • Pomocny post
    #2 9472938
    Elektronik9
    Poziom 30  
    Dla każdego ciągu fft z każdej ramki możesz wyliczać maximum amplitudy i wg tego kryterium dostosowywać zakres osi "na bieżąco".
  • REKLAMA
  • #3 9475402
    nuo
    Poziom 2  
    Tak też uczyniłem i póki co tak musi pozostać. Nawet ma to sens (mam na myśli wizualny efekt), bo dla kolejnych ramek sygnału mowy wyróżniają się prążki na tych samych częstotliwościach.

    Teraz z kolei mam problem ze spektrum LPC, ale na to zakładam kolejny wątek, tak więc zapraszam :)
  • REKLAMA
  • #4 9480749
    maciej747
    Poziom 12  
    nuo napisał:
    Moje pytanie natomiast brzmi w jaki sposób określić maksymalną możliwą amplitudę prążka widma


    Cześć: maksymalna wartość (moduł wartości) prążka jest nie większa niż suma wartości bezwzględnych wszystkich próbek sygnału. Prążek o dokładnie takim module wartości wystąpi na przykład w przypadku sygnału stałego.

    Pozdro,

    Maciej
  • REKLAMA
  • #5 9494874
    qrdel
    Poziom 28  
    Zgodnie z twierdzeniem [zapomniałem] FFT zachowuje moc sygnału; czyli suma estymatora mocy po kanałach częstotliwościowych jest równa sumie kwadratów amplitudy po czasie rekordu. Oczywiście z dokładnością do stałej skalującej.
  • #6 9497454
    maciej747
    Poziom 12  
    qrdel napisał:
    Zgodnie z twierdzeniem [zapomniałem] FFT zachowuje moc sygnału; czyli suma estymatora mocy po kanałach częstotliwościowych jest równa sumie kwadratów amplitudy po czasie rekordu. Oczywiście z dokładnością do stałej skalującej.


    Twierdzenie Plancherela lub Parsevala (są różne wersje). Tak jak piszesz też można oszacować amplitudę TF. I też oszacowanie jest dokładne dla sygnałów stałych. Ale oszacowanie przez sumę modułów próbek (a nie przez sumę kwadratów) jest lepsze dla sygnałów, które nie są stałe.

    Pozdro,

    Maciej
REKLAMA