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

 
 
> обратное преобразование Фурье, почему так получается?
Д.К.
сообщение Oct 5 2012, 08:29
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 23-08-12
Пользователь №: 73 232



Нашёл в сети исходник преобразования Фурье.
Функция производит БПФ. Функция принимает на вход следующие аргументы:

реальный массив, мнимый массив, длину преобразования и флаг, который если принимает "1" - производится ОБПФ, если "0" - прямое БПФ.

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

сверху: исходный сигнал
внизу: ОБПФ реальной части спектра этого сигнала.

Почему получается как бы зеркальный сигнал?
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Д.К.
сообщение Oct 5 2012, 09:01
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 23-08-12
Пользователь №: 73 232



разделение выглядит так

for(i=1; i<N; i++)
{
re1[i] = (xr[i]+xr[N -i])/2;
img1[i] = (xi[N -i]-xi[i])/2;
re2[i] = (xi[i]+xi[N -i])/2;
img2[i] = (xr[i]-xr[N -i])/2;
}

где xr - массив реальной части, после преобразования, xi - массив мнимой части,
N - длина сигнала/преобразования

Сообщение отредактировал Д.К. - Oct 5 2012, 09:02
Go to the top of the page
 
+Quote Post



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

 


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


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