На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: RaD, nsh
  
> Некоторые ньюансы, связанные с FFT
    Всем форумчанам приветов!

    Задался недавно вопросиком,в моей программке(которую мы уже активно обсудили))
    была такая переменная:

    FFTsize = 512;

    При частоте дискретизации в 8000.

    Почему именно 512? от чего это зависит? Немного прочитав, я так понял, что это "число FFT", дескать чем оно больше, тем анализ круче/чише.

    Подскажите, пожалуйста, что-то связанное с этим)

    И еще вопрос, далее я делю звуковые данные, так скажем, на окна.Какова длинна этих окон оптимальна? Что будет если делить звуковые данные на это же число, что и размер FFT?

    Заранее благодарствую!)
      у вас есть какая-то волна
      вам надо разложить её на синусоиды с определённой амплитудой и фазой
      количество отчётов частот у вас не может получиться больше чем FFTsize/2
      соответственно если вы захотите увеличить развёртку по частоте - вам придётся увеличить количество отсчётов исходного сигнала
      но при этом временные интервалы у вас будут на столько сильно пересекаться - что спектр начнёт размываться во времени
      размытие спектра также будет во многом зависеть от выбранной функции для окна (в каком-то смысле фильтра)
      и выше сказанного напрашивается вывод что для каждой частоты дискретизации сигнала есть оптимальное значение FFTsize (соответственно оптимальное значение развёртки частоты FFTsize/2)
      для избежания размытия во времени при повышении значения FFTsize необходимо более оптимально подбирать функцию окна (сужать зону захвата центральной области), но в конечном итоге это может привести к тому что количество вычислений увеличится, а качество не улучшится
        Ну так для частоты дискретизации 8000, например, какое оптимальное FFTsize?
          MrKor
          Размер окна, FFTSize и т.п. зависит от задачи. А также от скорости.
          Чаще всего эти параметры уточняются после завершения задачи, когда есть некоторая метрика для оценки качества решения задачи. Перебирая параметры находят оптимальный где качество выше либо скорость в зависимости от потребностей.

          Если задача большая или параметров много, то оптимум ищут на более маленьких подзадачах.
          Сообщение отредактировано: Pavia -
            Цитата
            Ну так для частоты дискретизации 8000, например, какое оптимальное FFTsize?


            Оптимальная ширина окна для анализа речи 25 мс. Для частоты дискретизации 8000 это 200 отсчётов. Число преобразований фурье - минимальня степень двойки, большая чем 200. Это 256. Если брать меньше FFT, то информация будет теряться.

            Соотвественно для частоты дискретизации 16000 fftsize 512. Для 48000 - 2048.
            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script execution time: 0,0554 ]   [ 15 queries used ]   [ Generated: 21.05.24, 18:41 GMT ]