Цитата(Lmx2315 @ Aug 19 2013, 19:08)

..если пиков немного то лучше отказаться от Фурье и считать Алгоритм Гёрцеля.
Надо наперёд знать частоту. Мне наперёд частоты пиков неизвестны, даже приблизительно. А вот комбинировать с неточным БПФ вполне здраво: сначала вычислить приблизительное положение пиков через БПФ на четверти выборки, а затем вычислить найти точные частоты пиков через Алгоритм Гёрцеля.
Цитата(Aleksandr Baranov @ Aug 20 2013, 00:38)

Прямоугольное окно сильно испортит картину.
Лишние регулярные составляющие будут?
Цитата(Aleksandr Baranov @ Aug 20 2013, 00:38)

Какой тогда смысл в таком высоком разрешении?
Частоту измерять.
Цитата(Aleksandr Baranov @ Aug 20 2013, 00:38)

А сигнал, случайно не узкополосный?
Сумма нескольких узкополосных, во всех случаются периодические псевдослучайные фазовые броски.
Цитата(Aleksandr Baranov @ Aug 20 2013, 00:38)

Если да, то частоту дискретизации можно сильно уменьшить.
Возможно, верхняя частота исследуемого сигнала может лежать в диапазоне от пары десятков герц, до 15 кГц. А вот оценить частоту нужно с точностью до 1 Гц.
Цитата(Aleksandr Baranov @ Aug 20 2013, 00:38)

Чтобы оценить время выполнения, можно зарядить 65536 - точечное БПФ на какой-нибудь мощной PC и засечь время.
Надо зарядить его раз сто подряд, чтобы погрешность оценки времени меньше была. Попробую.
Цитата(Alex11 @ Aug 20 2013, 01:31)

Про степень 2, что тут говорили - это относится не к частоте дискретизации, а к количеству отсчетов в окне.
Ну, да. А у меня длина маленького окна 250 мс, а большого 1 секунда.
Цитата(Alex11 @ Aug 20 2013, 01:31)

Здесь от Вас уже все добиваются - что Вы хотите анализировать и найти: какая нижняя частота сигнала, которая Вас интересует?
Допустим, 21 герц, но нужно знать, что это не 20 Гц и не 22 Гц, с вероятностью 50% и более.
Цитата(Alex11 @ Aug 20 2013, 01:31)

Выбор окна зависит от задачи - какие у Вас пики и что требуется получить в результате анализа - разрешение по частоте или анализ амплитуд гармоник.
Высокое разрешение по частоте строго обязательно. По амплитуде желательно, ибо нужно будет искать пики.
Цитата(Alex11 @ Aug 20 2013, 01:31)

возможность определить частоту пика с точностью 1 Гц
Именно это. Причём нужно это как можно быстрее. Темп выдачи составляет одну секунду. Начальное запаздывание на секунду мне простительно.
Цитата(Alex11 @ Aug 20 2013, 01:31)

Если пики отстоят друг от друга достаточно далеко, то можно обойтись гораздо меньшей кровью и подсчитать положение пика дополнительной обработкой спектра после Фурье.
Допустим, что соседние пики отстоять могут на 3 Гц. Кстати, буду очень признателен, если расскажете мне о «дополнительной обработке спектра после Фурье».
Сообщение отредактировал uwboy - Aug 20 2013, 07:17