Яке максимальне дозвіл частоти для спектрограми реалізації STFT Matlab ()?


10

spectrogram()Функція Matlab обчислює STFT сигналу. Він описує свій NFFTаргумент так:

S = SPECTROGRAM(X,WINDOW,NOVERLAP,NFFT)задає кількість точок частоти, які використовуються для обчислення дискретних перетворень Фур'є. Якщо NFFTне вказано, використовується типовий параметр NFFT.

Чи правильно я вважаю, що NFFTце компроміс лише між роздільною здатністю частоти та кількістю обчислень? Для моєї роботи в режимі офлайн не потрібно зберігати цикли. Чи існує якась максимальна межа NFFT, накладена, наприклад, через випромінювання спектра, чи будь-яку іншу проблему, про яку я повинен знати, чи можу я встановити цей аргумент якомога вище?

Відповіді:


5

Довжина FFT - це компроміс між частотою та часовою роздільною здатністю. Спектрограми часто генеруються шляхом обчислення перекриваючих FFT на цікавий сигнал. Якщо зробити FFT довше, то ефективна пропускна здатність кожного вихідного відростка стає меншою, тому роздільна здатність по осі частоти покращується. Єдиним обмежуючим фактором для частотного дозволу, який ви можете отримати, є загальний час спостереження, який ви маєте за сигналом.

В той же час, ваша здатність розв’язувати функцію, локалізовану в часі, зменшується. Інтуїтивно зрозумілий спосіб подумати про це - розглянути FFT як складну конверсію вниз, а потім операцію інтеграції та скидання:

Х[к]=н=0N-1(х[н]е-j2πнкN)

х[н]2πнкNNх[н]N

Ви також маєте рацію, що збільшення довжини FFT вимагає додаткових обчислень, які можуть бути актуальними для програм у режимі реального часу.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.