реклама на сайте
подробности

 
 
> FFT в db, БПФ
djhall
сообщение Jun 19 2014, 19:50
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 168
Регистрация: 29-04-06
Пользователь №: 16 608



Мне необходимо построить график БПФ в том виде как он обычно представляется в даташитах на АЦП, т.е. в децибелах.
У меня есть исходный файл с отсчётами АЦП на который подан синусоидальный сигнал. Нахожу БПФ по 2048 точкам и далее нахожу 10*log10(БПФ) и строю график. Далее показан сигнал и 10*log10(БПФ) (первые две картинки)- явно не совсем хороший спектр. В чём может быть ошибка? Подскажите как правильно построить такой график.

Ожидал увидеть нечто такое (третья картика)
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Xenia
сообщение Jun 20 2014, 20:25
Сообщение #2


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Правую половину спектра надо отрезать - это зеркальная часть, побочный продукт алгоритма FFT. Тем более что по теории число коэффициентов не может превышать частоту Найквиста (половины числа точек в исходном массиве).

Откладывать на спектре следует не sin- и cos- составлющие (они дёргаются, переходя друг в друга, из-за того, что фаза плывёт), а их "гипотенузу" sqrt(sin^2+cos^2) - это будет амплитуда, от фазы независящая. Тогда эффект "шершавости", возможно, сам пропадет, без всяких окон.
Go to the top of the page
 
+Quote Post
doom13
сообщение Jun 20 2014, 21:05
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Xenia @ Jun 20 2014, 23:25) *
Правую половину спектра надо отрезать - это зеркальная часть, побочный продукт алгоритма FFT. Тем более что по теории число коэффициентов не может превышать частоту Найквиста (половины числа точек в исходном массиве).

Вопрос был не в этом, тут сам смысл применения окна показан, а правую половину, если смущает, можно и выбросить.

Цитата(Xenia @ Jun 20 2014, 23:25) *
Откладывать на спектре следует не sin- и cos- составлющие (они дёргаются, переходя друг в друга, из-за того, что фаза плывёт), а их "гипотенузу" sqrt(sin^2+cos^2) - это будет амплитуда, от фазы независящая. Тогда эффект "шершавости", возможно, сам пропадет, без всяких окон.

Вообще-то там и показана амплитуда:
Код
sqrt((Re{FFT})^2 + (Im{FFT})^2)

, так что если правую часть выбросить, то остальное всё верно.

Цитата(ViKo @ Jun 20 2014, 23:40) *
Задайте в вашем примере целое число периодов исследуемой частоты, и покажите результат БПФ, без окна и с окном.

Ну вот здесь получается, видимо, частный случай, не всегда в нужную выборку влезет целое число периодов. Так что на это, думаю, полагаться не стоит.

Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
ViKo
сообщение Jun 20 2014, 21:16
Сообщение #4


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(doom13 @ Jun 21 2014, 00:05) *
Ну вот здесь получается, видимо, частный случай, не всегда в нужную выборку влезет целое число периодов. Так что на это, думаю, полагаться не стоит.

Возвращаемся к началу дискуссии... Полагаться, как вы говорите, не на что. В одном случае будут красивые "палки", в другом - не очень. Как повезет.
Теоретики придумали десятка два оконных функций, каждая имеет некую особенность, и еще нужно вспомнить, какую когда включать. И ни одна не гарантирует идеальную достоверность амплитуды и частоты. laughing.gif
Go to the top of the page
 
+Quote Post
doom13
сообщение Jun 20 2014, 21:28
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(ViKo @ Jun 21 2014, 00:16) *
Возвращаемся к началу дискуссии... Полагаться, как вы говорите, не на что. В одном случае будут красивые "палки", в другом - не очень. Как повезет.
Теоретики придумали десятка два оконных функций, каждая имеет некую особенность, и еще нужно вспомнить, какую когда включать. И ни одна не гарантирует идеальную достоверность амплитуды и частоты. laughing.gif

Красивые, как Вы говорите, палки без использования окна будут в одном частном случае, если в рассматриваемую выборку помещается целое число периодов сигнала (из всего множества анализируемых частот - одна совпадёт и то, если повезёт).
С оконной функцией мы получаем красивый спектр во всех случаях.
Go to the top of the page
 
+Quote Post
ViKo
сообщение Jun 20 2014, 21:39
Сообщение #6


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(doom13 @ Jun 21 2014, 00:28) *
Красивые, как Вы говорите, палки без использования окна будут в одном частном случае, если в рассматриваемую выборку помещается целое число периодов сигнала (из всего множества анализируемых частот - одна совпадёт и то, если повезёт).
С оконной функцией мы получаем красивый спектр во всех случаях.

Не одна, а целая куча. Их же много может быть, кратных.
Красивый спектр - именно синенький. Такой и хотел видеть топикстартер. А красненький - только приближение к нему.
Go to the top of the page
 
+Quote Post
doom13
сообщение Jun 20 2014, 21:54
Сообщение #7


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(ViKo @ Jun 21 2014, 00:39) *
Не одна, а целая куча. Их же много может быть, кратных.
Красивый спектр - именно синенький. Такой и хотел видеть топикстартер. А красненький - только приближение к нему.

То, что хотел увидеть топикстартер, он увидел выше и выразил свою благодарность за помощь в данном вопросе. Вам советую почитать хотя бы это. Думаю, спор далее не уместен и нужно закрывать тему.
Go to the top of the page
 
+Quote Post
ViKo
сообщение Jun 21 2014, 07:18
Сообщение #8


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(doom13 @ Jun 21 2014, 00:54) *
То, что хотел увидеть топикстартер, он увидел выше и выразил свою благодарность за помощь в данном вопросе. Вам советую почитать хотя бы это. Думаю, спор далее не уместен и нужно закрывать тему.

А мы спорим? sm.gif Мы говорим об одном и том же, только по-разному оцениваем степень "волшебства" оконных функций. Определяется упертостью оппонента. За совет спасибо, только я это читал и применял раньше вас (я так думаю). rolleyes.gif
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- djhall   FFT в db   Jun 19 2014, 19:50
- - dm.pogrebnoy   Окно жешь. Оконную функцию наложить надо. почитать...   Jun 19 2014, 19:53
- - doom13   С окном получите спектр по внешнему виду как на тр...   Jun 19 2014, 20:28
|- - ViKo   Цитата(doom13 @ Jun 19 2014, 23:28) С окн...   Jun 20 2014, 10:34
|- - prig   Цитата(ViKo @ Jun 20 2014, 14:34) Никогда...   Jun 20 2014, 13:56
|- - ViKo   Цитата(prig @ Jun 20 2014, 16:56) Получит...   Jun 20 2014, 14:01
|- - Fat Robot   Желание быть в оппозиции подчас "превозмогает...   Jun 20 2014, 16:37
||- - ViKo   Цитата(Fat Robot @ Jun 20 2014, 19:37) Же...   Jun 20 2014, 19:11
||- - doom13   Цитата(ViKo @ Jun 20 2014, 22:11) Не совс...   Jun 20 2014, 19:35
||- - ViKo   Цитата(doom13 @ Jun 20 2014, 22:35) Что-т...   Jun 20 2014, 19:38
||- - doom13   Ранее Вы утверждали, что оконная функция не позвол...   Jun 20 2014, 20:05
||- - ViKo   Цитата(doom13 @ Jun 20 2014, 23:05) Как в...   Jun 20 2014, 20:16
||- - doom13   Цитата(ViKo @ Jun 20 2014, 23:16) Вижу - ...   Jun 20 2014, 20:31
|- - prig   Цитата(ViKo @ Jun 20 2014, 18:01) А как е...   Jun 23 2014, 07:36
|- - doom13   Цитата(prig @ Jun 23 2014, 10:36) Вообще-...   Jun 23 2014, 09:08
|- - shf_05   попробуйте дополнить сигнал слева и справа нулями....   Jun 24 2014, 13:09
- - gridinp   Цитата(djhall @ Jun 19 2014, 23:50) Ожида...   Jun 20 2014, 10:14
- - djhall   Спасибо большое всем. Действительно с оконной функ...   Jun 20 2014, 15:47
- - doom13   В софте к отладочным платам от TI в качестве одног...   Jun 20 2014, 17:17
- - ViKo   Цитата(Xenia @ Jun 20 2014, 23:25) Отклад...   Jun 20 2014, 20:40
- - Xenia   Цитата(doom13 @ Jun 21 2014, 01:05) Вообщ...   Jun 20 2014, 21:14
|- - doom13   Цитата(Xenia @ Jun 21 2014, 00:14) А чем ...   Jun 20 2014, 21:17
|- - ViKo   Цитата(Xenia @ Jun 21 2014, 00:14) А чем ...   Jun 20 2014, 21:17
- - doom13   Цитата(ViKo @ Jun 21 2014, 10:18) А мы сп...   Jun 21 2014, 08:28


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 14:21
Рейтинг@Mail.ru


Страница сгенерированна за 0.01546 секунд с 7
ELECTRONIX ©2004-2016