Преобразование Фурье: самый подробный разбор

Перевод
9
12058
Добавить в избранное

Преобразование Фурье – одно из базовых понятий в обработке сигналов и анализе данных. Но что оно означает? Геометрическая интерпретация.

Преобразованием Фурье: самый подробный разбор

Возьмём классическую задачу – работу со звуком. Теперь добавим конкретики.

Ваш друг приносит запись своего живого выступления. И это очень удачное выступление. Но! Хотя запись делали на хороший микрофон, в ней всё равно присутствует шум. Друг просит помочь убрать его или хотя бы уменьшить.

Здесь и пригодится знание преобразования Фурье.

Что такое звук в математическом смысле?

Отдельная нота – это гармонический сигнал с определённой частотой и амплитудой.

Как правило, мелодию, речь или иной звуковой сигнал можно представить как сумму гармонических сигналов. Шумом в таком случае мы называем слагаемые, соответствующие любым нежелательным звукам.

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

Запишем определение:

Определение преобразования Фурье

Здесь g(t) – это исходный сигнал (в нашем случае запись друга). В контексте преобразования Фурье его называют оригиналом. G(f) – изображение по Фурье, а параметром f выступает частота.

Возможно, вам уже знакомо это определение. Но знаете ли вы, как происходит это преобразование? Если бы увидели его впервые, поняли бы, как с его помощью анализировать исходный сигнал?

Геометрическая интерпретация преобразования Фурье

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

В дальнейшем обсуждении предполагается, что вы знакомы с векторами, интегрированием и понятием комплексного числа. Если каких-то знаний вам всё-таки не хватает, ознакомьтесь с материалами из нашей подборки по вузовской математике.

1. Наматываем сигнал

Давайте начнём с самого простого случая. Рассмотрим гармонический сигнал, совершающий 3 колебания в секунду (f0 = 3с-1):

g(t) = 1 + cos (6πt).

Исходный сигнал

Отобразим g(t) на комплексную плоскость. Для этого введём радиус-вектор, который равномерно вращается по часовой стрелке. Его длина в каждый момент времени равна модулю значения сигнала, а частота вращения выбирается произвольным образом.

Теперь построим траекторию движения конца вектора, совершающего полный оборот за две секунды, или, другими словами, с частотой вращения fВ = 0.5 об/с.

Намотка сигнала

Выглядит, будто мы намотали исходный сигнал на начало координат. В минимумах сигнала полученная «намотка» сливается с началом координат, а при приближении к максимумам – отклоняется.

Пока выглядит не особо информативно, не так ли?

А теперь увеличим частоты намотки.

Сначала график распределяется довольно симметрично относительно начала координат до частоты вращения fВ = 3 об/с. Затем максимумы резко смещаются в правую полуплоскость, а намотка перестаёт напоминать узор спирографа.

2. Ищем центр масс

Посмотрим внимательнее, что происходит. В качестве характеристики намотки возьмём усреднённое значение всех её точек – центр масс (отметим его оранжевым цветом).

Строим зависимость положения центра масс от частоты намотки. Сейчас нам достаточно рассмотреть х-кординату, но в дальнейшем для определения преобразования Фурье потребуются обе координаты.

Реальная часть преобразования Фурье гармонического сигнала

Мы видим два пика: в точках fВ = 0 об/с и fВ = 3 об/с. На основании такого поведения центра масс уже можно судить о частоте исходного сигнала (он колеблется с f = 3с-1).

Тогда что означает всплеск на низких частотах?

3. Анализируем влияние смещения

Возможно, вы обратили внимание, что рассматриваемый нами сигнал смещён на единицу. Сдвиг был введён для наглядности, но именно он приводит к усложнению поведения центра масс.

При нулевой частоте всё отображение сигнала на комплексной плоскости располагается на оси абсцисс. На малых частотах намотка по-прежнему группируется в правой полуплоскости.

Как только мы убираем сдвиг, т. е. берём сигнал вида g(t) = cos (6πt), намотка при низких частотах сдвигается влево по оси абсцисс.

Построение радиус-вектора остаётся аналогичным. Его длина равна модулю значения сигнала, направление вращения – положительное. Но при смене знака g(t) направление вектора меняется на противоположное.

Сейчас вы увидите, как меняется намотка и х-координата центра масс несмещённого сигнала.

Реальная часть преобразования Фурье несмещённого сигнала

Таким образом, на графике остался только один резкий скачок.

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

4. Выделяем частоты полигармонического сигнала

Теперь рассмотрим сумму двух гармонических сигналов с частотой колебаний f1 = 2 с-1 и f2 = 3 с-1. Проделаем с ней те же операции – «намотаем» возле начала координат, и, меняя частоту вращения, построим график х-координаты центра масс.

Реальная часть преобразования Фурье для суммы сигналов

Мы наблюдаем два пика в точках fВ = 2 об/с и fВ = 3 об/с, что соответствует частотному составу исходной суммы.

Отметим ещё один интересный факт, верный как для х-координаты, так и для преобразования Фурье. Преобразование для суммы сигналов и сумма преобразований сигналов имеют один и тот же вид. Т. е. преобразование Фурье линейно.

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

Вывод преобразования Фурье

В самом начале рассмотрения мы отобразили исходный сигнал на комплексную плоскость. Такой выбор не случаен – это позволяет рассматривать точки на плоскости как комплексные числа и использовать формулу Эйлера для описания намотки:

e=cos(φ)+i·sin(φ).

Геометрически это соотношение означает, что при любом φ точка e на комплексной плоскости лежит на единичной окружности.

Построим радиус-вектор e при разных значениях φ.

Формула Эйлера

При изменении φ на вектор проходит полный оборот против часовой стрелки, так как – длина единичной окружности. Чтобы задать скорость вращения вектора, показатель степени домножаем на ft, а для смены направления вращения – на -1.

Тогда намотка сигнала g(t) описывается как g(t)e-2πift.

Теперь вычисляем центр масс. Для этого отметим N произвольных точек на графике намотки и вычислим среднее:

Оценка центра масс

Если мы будем увеличивать количество рассматриваемых точек, придём к предельному случаю:

Центр масс

где t1 и t2 – границы интервала, на котором рассматривается сигнал.

Выражение перед интегралом представляет собой масштабирующий коэффициент, но не отражает поведение центра масс. Потому его можно отбросить.

Полученное выражение и будет являться преобразованием Фурье с той разницей, что в общем виде интегрирование задаётся на интервале от -∞ до +∞.

Такой переход к бесконечному интервалу означает, что мы не накладываем никаких ограничений на длительность рассматриваемого сигнала.

Применение преобразования Фурье для фильтрации

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

При этом частота намотки f становится входным параметром для изображения по Фурье. Центр масс выступает оценкой, насколько хорошо соотносится (коррелирует) параметр f с присутствующими в сигнале частотами.

После того, как вы найдёте в принесённой другом записи все частотные компоненты, вам останется только вычесть их из изображения и применить обратное преобразование Фурье.

Мы что-то упустили? Напишите об этом в комментариях 🙂

Интересуетесь математикой?

Подпишитесь на нашу рассылку, чтобы получать больше интересных материалов:

И не беспокойтесь, мы тоже не любим спам. Отписаться можно в любое время.




Комментариев: 9

  1. Видимо я ничего не понимаю….

  2. А вообще, спасибо за эту метафору намотки сигнала и центр масс. Это действительно хорошо многое иллюстрирует

  3. «Мелодия, речь или иной звуковой сигнал можно представить как сумму гармонических сигналов.»

    1) опечатка: МелодиЮ
    2) оно, конечно, так, но это совершенно не очевидно. Поэтому, фраза требует переделки из апелляции к общеизвестному (каковой она выглядит) в обещание показать или хотя бы в знакомство с удивительным.

    Например: «Оказывается, любую мелодию, речь или иной звуковой сигнал можно представить как сумму гармонических сигналов.»

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

    1. Alexandr Nikolaev

      Во-первых, не любой. В общем случае, сигнал должен быть непрерывным. Т.е «функция — образ» должна быть дифференцируема на данном отрезке.
      Вторая часть «марлизонского балета»: обратите внимание на выражение: там f — определена континуально, т.е. на всем множестве действительных чисел. В реале, мы используем счетное число гармоник. Таким образом, мы не повторяем исходный (аналоговый) сигнал суммой гармоник, мы лишь аппроксимируем его с определенной точностью. Кроме того, аппроксимируем для очень короткого промежутка времени, продолжительность которого определяется частотой дискретизации. Для следующего временного промежутка, комп делает новое преобразование Фурье, потом еще новое, и так 44100 раз в секунду (форматы типа mp3). А количество гармоник смотрим на графическом эквалайзере любого mp3 плеера.
      Третья часть «марлезонского балета»: касалась бы квантовой механики и как рассказать о принципе неопределенности Гейзенберга при помощи mp3 плеера типа winap, но уже поздно и я пошел спать. Есть еще и 4 часть этого балета, про гидроакустику и спектральные портреты вражеских кораблей. И все это Фурье!!!

    2. Andrew Shelkovenko

      >как любой не периодический сигнал оказывается суммой периодических…
      Если не периодический сигнал определен на отрезке, то
      сумма «синусоид» будет периодической функцией, но на заданном отрезке будет совпадать с этим непериодическим сигналом.

    3. Спасибо. Исправлено 🙂 Нам часто не хватает копирайтеров. Будет желание — пишите обязательно 😉

  4. Игорь Кабакин

    Где-то я это уже видел. Где ссылка на первоисточник?

    1. Добавили.

  5. Антон Кузнецов

    Прелесть пребразования Фурье в том, что его можно трактовать разными способами. Например, с позиции функана мы просто проецируем вектор сигнала на набор ортогональных векторов комплексной синусоиды. Для дискретного случая: n-мерные вектора, для непрерывного — бесконечномерные.

Добавить комментарий