|
Не могу понять ДПФ, вопрос чайника |
|
|
|
Aug 24 2011, 13:12
|

Частый гость
 
Группа: Участник
Сообщений: 159
Регистрация: 3-01-11
Пользователь №: 62 000

|
Цитата(kumle @ Aug 24 2011, 15:52)  Как Сумма частотных составляющих от -00 до +00 превратилась в сумму от 0 до N-1 ? Там же написано: поскольку базисные функции (комплексные экспоненты) на цифровой сетке неуникальны, их можно сгруппировать, оставив только уникальные: от 0 до N–1.
|
|
|
|
|
Aug 24 2011, 14:08
|
Частый гость
 
Группа: Участник
Сообщений: 161
Регистрация: 22-06-09
Из: Москва
Пользователь №: 50 531

|
Цитата(kumle @ Aug 24 2011, 17:27)  Тогда получается если я взял оцифровал сигнал, взял 10 оцифрованых значений и получил в результате всего 10 точек для построения спектра ? никак иначе ? Если Вы используете БПФ, то количество входящих переменных и количество выходящих переменных совпадают. На выходе мы можем получить 5 амплитуд + 5 фаз (частоты определяются жестко самим применением БПФ и неизменны для данной выборки). БПФ - математическая абстракция и не определяет реальных частот сигнала, но то, что получается в большинстве случаев вполне достаточно для многих применений.
Сообщение отредактировал SPACUM - Aug 24 2011, 16:00
--------------------
Ты можешь знать все что угодно, но пока ты не доказал это на практике, ты не знаешь ничего!© Ричард Бах
|
|
|
|
|
Aug 24 2011, 17:57
|

Частый гость
 
Группа: Участник
Сообщений: 159
Регистрация: 3-01-11
Пользователь №: 62 000

|
Цитата(kumle @ Aug 24 2011, 17:27)  Тогда получается если я взял оцифровал сигнал, взял 10 оцифрованых значений и получил в результате всего 10 точек для построения спектра ? никак иначе? Правильнее сказать так: (комплексный) сигнал длиной 10 точек можно представить (полностью описать) с помощью БПФ из 10 частот. Но никто вам не запрещает брать БПФ и большей длины, дополняя сигнал нулями.
|
|
|
|
|
Aug 24 2011, 19:01
|
Частый гость
 
Группа: Участник
Сообщений: 161
Регистрация: 22-06-09
Из: Москва
Пользователь №: 50 531

|
Цитата(Alexey Lukin @ Aug 24 2011, 21:57)  Правильнее сказать так: (комплексный) сигнал длиной 10 точек можно представить (полностью описать) с помощью БПФ из 10 частот. Но никто вам не запрещает брать БПФ и большей длины, дополняя сигнал нулями. Если у kumle всего 10 точек и пока никакой комплексности не намечается, то зачем человека путать? Есть RealFFT, которая из этого сделает 5 амплитуд и 5 фаз. И быстрее работает, чем для комплексных чисел. Лишнее надо отбрасывать.
--------------------
Ты можешь знать все что угодно, но пока ты не доказал это на практике, ты не знаешь ничего!© Ричард Бах
|
|
|
|
|
Aug 24 2011, 20:27
|

Частый гость
 
Группа: Участник
Сообщений: 159
Регистрация: 3-01-11
Пользователь №: 62 000

|
Цитата(SPACUM @ Aug 24 2011, 23:01)  зачем человека путать? Я всего лишь следую нотации его книжки. Вы — тоже путаете. RealFFT даст 6 амплитуд и 4 фазы. Цитата(Дмитрий_Б @ Aug 24 2011, 22:23)  Да уж... Судя по шрифту, солидная книжка. Только приведённый текст ошибочен по существу. Это классическая книга Рабинера-Гоулда. Никто не говорит, что X(k) в верхней формуле равно X(k) в нижней. Формула просто переписывается в другом виде, а значения коэффициентов Фурье при этом могут измениться.
|
|
|
|
|
Aug 25 2011, 06:30
|
Местный
  
Группа: Свой
Сообщений: 377
Регистрация: 23-12-06
Из: Зеленоград
Пользователь №: 23 811

|
Цитата(kumle @ Aug 24 2011, 15:52)  Как Сумма частотных составляющих от -00 до +00 превратилась в сумму от 0 до N-1 ? По моему, человек просто спросил про размножение копий спектра. Частотную шкалу результата ДПФ можно рассматривать на интервале от -бесконечность до +бесконечности, никто не запрещает, но то что вы получили на интервале от 0 до N-1 будет размножено в обе стороны, поэтому смысла в этом нету диапазона от 0 до N-1 достаточно. А во многих задачах и вовсе достаточно диапазона "положительных" частот от 0 до N/2.
|
|
|
|
|
Aug 25 2011, 07:34
|

Частый гость
 
Группа: Участник
Сообщений: 149
Регистрация: 15-12-09
Из: Москва
Пользователь №: 54 280

|
Кажется это понял. А если у меня обычный сигнал (вещественный), то я могу вычислить его спектр по формуле
(это из книги Уолта Кестера) И если я хочу вычислить амплитуду какой нибудь составляющей спектра я должен свои оцифрованные выборки подставить в эту формулу. Но тогда непонятно что я должен подставить в скобки косинуса cos(2*pi*n*k/N) если я допустим хочу вычислить какая будет амплитуда для частоты f ? Я знаю что w=2*pi*f; тогда cos(2*pi*n*k/N) = cos(wt) отсюда wt=2*pi*n*k/N; 2*pi*f*t=2*pi*n*k/N; 2*pi уходят и получается что f*t=n*k/N; выходит что t=n/N, а f=k значит в формуле я буду суммировать такие произведения: X(n)*cos(2*pi*f*n/N) где f - это частота на которой я хочу узнать амплитуду, а n=0 до N-1 ? Но тогда время через которое я получаю оцифрованные выборки (частота дискретизации) нигде не учитывается ?
|
|
|
|
|
Aug 25 2011, 07:56
|
Частый гость
 
Группа: Участник
Сообщений: 161
Регистрация: 22-06-09
Из: Москва
Пользователь №: 50 531

|
Цитата(kumle @ Aug 25 2011, 11:34)  Но тогда время через которое я получаю оцифрованные выборки (частота дискретизации) нигде не учитывается ? k - это нормированная частота. Если длина выборки = Т, то частота F = k / T. Если Т = 1 секунда, то к - это частота в Герцах. Разумеется к = 0, 1, 2, 3...(N/2 - 1) целое число.
Сообщение отредактировал SPACUM - Aug 25 2011, 08:03
--------------------
Ты можешь знать все что угодно, но пока ты не доказал это на практике, ты не знаешь ничего!© Ричард Бах
|
|
|
|
|
Aug 25 2011, 08:03
|
Местный
  
Группа: Свой
Сообщений: 377
Регистрация: 23-12-06
Из: Зеленоград
Пользователь №: 23 811

|
Цитата(kumle @ Aug 25 2011, 11:34)  Но тогда время через которое я получаю оцифрованные выборки (частота дискретизации) нигде не учитывается ? N говорит о том по сколки точкам дискретного сигнала вы делаете преобразование Фурье. От этого N зависит частотное разрешение вашего ДПФ. А вот оно как раз и связано с частотой дискретизации. Fs/N = шаг частот анализа. Пример, Fs=24кГц, N=1024, тогда шаг ДПФ равен 24/1024 = 23,4375Гц. В итоге получаем первый бин ДПФ выносим за скобки, второй бин характеризует мощность сигнала на частоте 23,4375Гц, второй бин на частоте 23,4375 * 2 = 46,875 и так для N/2 частот.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|