|
|
  |
Быстрое преобразование Фурье не для степени 2, как довести число отсчетов до стпени двойки |
|
|
|
Sep 14 2011, 14:32
|
Частый гость
 
Группа: Участник
Сообщений: 161
Регистрация: 22-06-09
Из: Москва
Пользователь №: 50 531

|
Цитата(Sergey Makarov @ Sep 14 2011, 16:45)  Стоит задача осуществить быстрое преобразование Фурье для 500 отсчетов. А мне нули не нравятся, спектр совсем другой. Существует множество алгоритмов для 500 отсчетов, например Винограда(раза в полтора медленнее чем FFT на 512 точек), или FFTW (http://www.fftw.org)авторы называют его самым быстрым для любого числа точек и текст программы приведен.
Сообщение отредактировал SPACUM - Sep 14 2011, 14:38
--------------------
Ты можешь знать все что угодно, но пока ты не доказал это на практике, ты не знаешь ничего!© Ричард Бах
|
|
|
|
|
Sep 14 2011, 21:57
|
.
     
Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753

|
Цитата(Alexey Lukin @ Sep 15 2011, 02:26)  GetSmart, какая палка?
fontp правильно написал. Везде надо искать подвох  И вы с fontp обманщики, мягко говоря, те ещё. Спектр, в виде частотного разрешения, может и не меняется, но амплитуда искажается.
--------------------
Заблуждаться - Ваше законное право :-)
|
|
|
|
|
Sep 15 2011, 05:54
|
Частый гость
 
Группа: Свой
Сообщений: 147
Регистрация: 19-10-05
Из: Россия, г.Чебоксары
Пользователь №: 9 845

|
Спасибо большое за ответы! Кое что уже началось проясняться  Не могли бы еще ответить на один небольшой вопрос. Есть массив из 500 точек, грубо говоря это отсчеты для 50тигерцового сигнала с отсчетом 40 мкс за один период. А мне надо допустим разложить сигнал с основной частотой 30Гц, тогда массив получается 833 точки на один период. Для сигнала с еще меньшей частотой, массив будет еще больше. Отсюда вопрос, надо ли знать для преобразования Фурье частоту раскладываемого сигнала? или в результате разложения частота основной гармоники и так станет известной? Вроде как судя по формулам частота раскладываемого сигнала нигде не фигурирует, а делается предположение что массив данных отсчетов значений функций это есть значения за одни период, и дальше этот сигнал будет повторяться. ТО есть я могу для 30герцового сигнала взять теже 500 отсчетов? или минимум должен взять кол-во отсчетов снятое за период сигнала? Извините за дилетантские вопросы, с обработкой цифровых сигналов пока столкнулся впервые. Цитата(getch @ Sep 14 2011, 21:51)  спасибо за приведенную ссылку  но вопрос заключался немного в другом, есть аппаратная реализация в ДСП по алгоритму двойки, и мне надо довести 500 отсчетов до 512 каким то образом, чтоб не тратиь вычеслительные ресурсы контроллера, используя аппаратный модуль. Цитата(Alexey Lukin @ Sep 15 2011, 01:26)  всё зависит от задачи. В абсолютном большинстве задач выгоднее дополнить сигнал нулями, чем считать FFT "неправильного" размера. согласен с вами. А например я могу весь диапазон измеряемых сигналов дискретировать 512 отсчетами? буть то 10Гц сигнал, либо 60Гц. Сильно это будет влять на точность результата?
|
|
|
|
|
Sep 15 2011, 06:22
|
Частый гость
 
Группа: Участник
Сообщений: 161
Регистрация: 22-06-09
Из: Москва
Пользователь №: 50 531

|
Цитата(Sergey Makarov @ Sep 15 2011, 09:54)  Сильно это будет влять на точность результата? Это зависит от того, что Вы называете точностью. И какую точность считаете достаточной. Если Вы уточните Ваши требования, то ответ будет более правильный. Может БПФ совсем не обладает требуемой точностью. А Alexey Lukin привел пример конечного сигнала (ядро фильтра) тут и дополнять нечего слева и справа от ядра только нули.
--------------------
Ты можешь знать все что угодно, но пока ты не доказал это на практике, ты не знаешь ничего!© Ричард Бах
|
|
|
|
|
Sep 15 2011, 06:43
|
Частый гость
 
Группа: Свой
Сообщений: 147
Регистрация: 19-10-05
Из: Россия, г.Чебоксары
Пользователь №: 9 845

|
Цитата(SPACUM @ Sep 15 2011, 10:22)  Это зависит от того, что Вы называете точностью. И какую точность считаете достаточной. Если Вы уточните Ваши требования, то ответ будет более правильный. Может БПФ совсем не обладает требуемой точностью. А Alexey Lukin привел пример конечного сигнала (ядро фильтра) тут и дополнять нечего слева и справа от ядра только нули. первоначально хотел бы добавить что анализируемый сигнал является результатом оцифровки синусоидальных токов и напряжений во время частотного регулирования электроприводом, а преобразование фурье необходимо для анализа основных гармоник (например пяти) составляющих этот сигнал с исключением оставшихся, для последующей развертки и анализа сигнала
|
|
|
|
|
Sep 15 2011, 06:45
|
Знающий
   
Группа: Участник
Сообщений: 781
Регистрация: 3-08-09
Пользователь №: 51 730

|
Цитата Alexey Lukin: Результат ДПФ — это и есть спектр. Как скажете...
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|