LINUX.ORG.RU
Если речь про быстрые преобразования Фурье, то так и говори. Ответ на твой вопрос "Да".
anonymous
()
Ответ на: комментарий от anonymous
Если вопрос действительно был про быстрое преобразование Фурье, то лол!
soomrack ★★★★★
()
Ответ на: комментарий от anonymous
Народ, ну не все в физтехах учились, объясните по-человечески плиз...

Суть в чём - стало мне интересно как работают индикаторы спектра во всяких плеерах. Ну я догадывался что из формы волны как-то вытаскиваются частоты, но вот как... Захотелось понять и сделать такое же с нуля.

Нашёл что это называется БПФ. Увидел там всем известную формулу. Решил что e в этой формуле это число Эйлера и расписал формулу в виде программы. Прогнал через эту процедуру массив с точками синусоиды. Рассчитывал получить на выходе массив со всеми нулями и не-нулём в одном элементе, получил совсем другое... Что я не так делаю и как надо делать?

pentagon
() автор топика
Ответ на: комментарий от pentagon
Число взяли не то. Разложение по спектру, а в данном случае по синусоидам это и есть преобразование Фурье. Грубо говоря это разложение вектора (т.е. гармоники) в пространстве гладких функций на базисные вектора (синусоиды). Коэффициентами разложения обычно является скалярное произведение. В данном случае скалярное произведение это интеграл (или сумма в дискретном случае). А по-скольку канал дискретный, то и преобразование делается дискретное.

Объяснение несколько грубова-то, но суть отражает.

soomrack ★★★★★
()
Ответ на: комментарий от slav
кончено, блин.

ЗЫ: мдааа, сейчас я задумался, а может лучше пойти поспать и продолжить написание текста диссертации утром? Такие тупые опечатки мне не нужны.

soomrack ★★★★★
()
Ответ на: комментарий от pentagon
Всё правильно. Видимо, период синусоиды не соизмерим с длиной отрезка, на котором она задана, так что функция терпит разрыв на концах отрезка (вместе со своими производными, разумеется). При преобразовании Фурье разрывная функция даёт бяки в спектре вида 1/x^{a+1}, где a - первая производная, терпящая разрыв. ЧТобы с такими явлениями бороться, обычно перемножают сигнал со сглаживающй "шляпой" (типа окна Хамминга), чтобы сигнал и первые его производные обратились в нуль на конце отрезка. Ну, а потом берут FFT. Спектр несколько уширяется (поскольку он свёртывается с фурье-образом "шляпы"), но не существенно. В случае чистой синусоиды спектр размажется где-то на 2-3 точки.
mk
()
по названию топика подумал про Final Fantasy Tactics...
Igorrr ★★★★
()
конечно же преобразование фурье же
anonymous
()
Ответ на: комментарий от mk
Ну, и если вопрос касается, как именно работают индикаторы спектра в плеерах, то именно так и работают. Только отрезки, которые преобразуются по фурье, берутся с половинным перекрытием, так что после перемножения с окном, сумма сигналов двух соседних отрезков в области перекрытия равна в точности исходному сигналу. А потом с полученным набором спектров можно уже делать, что угодно. Например, накладывать их друг на друга с экспоненциальным fading-ом или как-то усреднять.
mk
()
Ответ на: комментарий от mk
хитрО конечно. ладно, всем спасибо, буду разбираться.
pentagon
() автор топика
Кста, гда ты "формулу" увидел?

Неужто с фортрана передираешь?
nicebytes
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.