LINUX.ORG.RU
ФорумTalks

[FFT][непонятные артефакты]

 


0

1

Сделал сигнал из двух синусоид 488Hz и 976Hz.

Дискретизация с частотой 20kHz

Взял 65536 отсчетов.

По идее с квадратным окном должно быть обычное размывание спектра. А какого хрена появляются гармоники основным частот?

Или я совсем туплю?

Спектрограмма по ссылке. http://ipicture.ru/uploads/101026/o60pblWa4K.png

★★☆☆☆

Какие же это гармоники, если они никак не кратны основным частотам?

Смахивает на интермодуляцию основных частот с частотой дискретизации.

ansky ★★★★★
()
Ответ на: комментарий от mclaudt

>А судя по узости этих пиков это просто численный/округляторский глюк.

Кстати я тоже об этом думал, но не был уверен, что это так.

Сигнал я создаю сам. Просто вызывая a*sin(2*pi*488*t)+...

dikiy ★★☆☆☆
() автор топика
Ответ на: комментарий от mclaudt

>А из чего сделан вывод, что они гармоники основных частот? Может быть просто наводки.

Разность между ними равна разности между основными частотами

dikiy ★★☆☆☆
() автор топика
Ответ на: комментарий от ansky

>Какие же это гармоники, если они никак не кратны основным частотам?

См. http://www.linux.org.ru/jump-message.jsp?msgid=5480635&cid=5481217

Смахивает на интермодуляцию основных частот с частотой дискретизации.

Кстати, создав искусственно еще и вектор времени, удалось артефакты убрать.

ЗЫ А вообще данные идут из прибора. Может это он неравеномерную временную шкалу дает?

dikiy ★★☆☆☆
() автор топика
Ответ на: комментарий от dikiy

>>Разность между ними равна разности между основными частотами

:-\ Это бы работало, если бы шкала была логарифмическая. А тут шкала частот же - должны отличаться не «на» а «в».

mclaudt
()
Ответ на: комментарий от dikiy

>>В каком смысле «переменной ширины»?

Одной частоте соответствует целый диапазон значений функции - жирная черная линия переменной жирноты. Откуда такое?

mclaudt
()
Ответ на: комментарий от mclaudt

>>Разность между ними равна разности между основными частотами

:-\ Это бы работало, если бы шкала была логарифмическая. А тут шкала частот же - должны отличаться не «на» а «в».

Это если считать разницу между гармониками, да.

Я неправильно выразил свою мысл. Это таки не гармоники походу, но разность между ними таки равна разности.... Мля. Я походу ночью вообще ничего не соображал.

dikiy ★★☆☆☆
() автор топика
Ответ на: комментарий от mclaudt

<Одной частоте соответствует целый диапазон значений функции - жирная черная линия переменной жирноты. Откуда такое?

Ты имеешь в виду то, что спектр растекается? или ты имеешь в виду жирную линию, которая слева на право идет через весь спектр?

dikiy ★★☆☆☆
() автор топика
Ответ на: комментарий от mclaudt

В каком смысле «переменной ширины»?


Одной частоте соответствует целый диапазон значений функции - жирная черная линия переменной жирноты. Откуда такое?


Скорей всего из-за того, что я сгенерировал меньше отсчетов, чем 65536, и они забились нулями.

Но я походу победил глюк. Ты оказался ближе всего к разгадке (глюки округления). Прибор давал на частоте дискретизации 20kHz странные отсчеты.

ve:1515>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> t(1000:1010)
ans =

0.0499499997502500
0.0500000097499999
0.0500499897497500
0.0500999997495000
0.0501500097492499
0.0501999897490000
0.0502499997487500
0.0503000097484999
0.0503499897482500
0.0503999997480000
0.0504500097477499

1/(t(1010)-t(1009))

ans = 19996.0008998188




наверное это из-за этого.

Когда сделал

t2=(t(1):0.00005:0.00005*65535+t(1));

все стало намного лучше.
К тестовому сигналу (на картинку красным) добавил еще одну частоту.

http://ipicture.ru/uploads/101026/HOqEP4Y2Se.png

Синим отображен сигнал, на который я потом собственно fft и натравливаю.

Это синал с прибора. Так как я с fft пока на Вы, синий сигнал в норме, или есть какие-то подозрения на неправильную обработку?

dikiy ★★☆☆☆
() автор топика
Ответ на: комментарий от dikiy

А, ну еще потом полезный сигнал передискретизировал

v=interp1(t,v,t2,'spline')

dikiy ★★☆☆☆
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.