Дискретное преобразование Фурье

Материал из testwiki
Перейти к навигации Перейти к поиску

Шаблон:Другие значения Дискретное преобразование Фурье (в англоязычной литературе DFT, Discrete Fourier Transform) — это одно из преобразований Фурье, широко применяемых в алгоритмах цифровой обработки сигналов (его модификации применяются в сжатии звука в MP3, сжатии изображений в JPEG и др.), а также в других областях, связанных с анализом частот в дискретном (к примеру, оцифрованном аналоговом) сигнале.

Дискретные преобразования Фурье помогают решать дифференциальные уравнения в частных производных и выполнять такие операции, как свёртки. Дискретные преобразования Фурье также активно используются в статистике, при анализе временных рядов. Существуют многомерные дискретные преобразования Фурье[1].

Дискретное преобразование Фурье требует в качестве входа дискретную функцию. Такие функции часто создаются путём дискретизации (выборки значений из непрерывных функций).

Формулы преобразований

Прямое преобразование:

Xk=n=0N1xne2πiNkn=n=0N1xn(cos(2πkn/N)isin(2πkn/N)),k=0,,N1.

Обратное преобразование:

xn=1Nk=0N1Xke2πiNkn=1Nk=0N1Xk(cos(2πkn/N)+isin(2πkn/N)),n=0,,N1.

Вторая часть выражения следует из первой по формуле Эйлера.

Обозначения:

  • N — количество значений сигнала, измеренных за период, а также количество компонент разложения;
  • xn,n=0,,N1, — измеренные значения сигнала (в дискретных временных точках с номерами n=0,,N1), которые являются входными данными для прямого преобразования и выходными для обратного;
  • Xk,k=0,,N1, — N комплексных амплитуд синусоидальных сигналов, слагающих исходный сигнал; являются выходными данными для прямого преобразования и входными для обратного; поскольку амплитуды комплексные, то по ним можно вычислить одновременно и амплитуду, и фазу;
  • |Xk|N — обычная (вещественная) амплитуда k-го синусоидального сигнала;
  • k — индекс частоты. Частота k-го сигнала равна kT, где T — период времени, в течение которого брались входные данные.

Из последнего видно, что преобразование раскладывает сигнал на синусоидальные составляющие (которые называются гармониками) с частотами от 1 колебания за период до N1 колебаний за период (плюс константа). Поскольку частота дискретизации сама по себе равна N отсчётов за период, то высокочастотные составляющие не могут быть корректно отображены — возникает муаровый эффект. Это приводит к тому, что вторая половина из N комплексных амплитуд, фактически, является зеркальным отображением первой и не несёт дополнительной информации.

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

Шаблон:Нет источников в разделе Рассмотрим некоторый периодический сигнал x(t) c периодом, равным T. Разложим его в ряд Фурье:

x(t)=k=+ckeiωkt,ωk=2πkT.

Проведем дискретизацию сигнала так, чтобы на периоде было N отсчетов. Дискретный сигнал представим в виде отсчетов: xn=x(tn), где tn=nNT, тогда эти отсчеты через ряд Фурье запишутся следующим образом:

xn=k=+ckeiωktn=k=+cke2πiNkn.

Используя соотношение e2πiN(k+mN)n=e2πiNkn, получаем:

xn=k=0N1Xke2πiNkn,     где     Xk=l=+ck+lN.

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

Умножим теперь скалярно выражение для xn на e2πiNmn и получим:

n=0N1xne2πiNmn=k=0N1n=0N1Xke2πiN(km)n=k=0N1Xk1e2πi(km)1e2πi(km)N=k=0N1XkNδkm.

Здесь использованы: а) выражение для суммы конечного числа членов (экспонент) геометрической прогрессии, и б) выражение символа Кронекера как предела отношения функций Эйлера для комплексных чисел. Отсюда следует, что:

Xk=1Nn=0N1xne2πiNkn.

Эта формула описывает прямое дискретное преобразование Фурье.

В литературе принято писать множитель 1N в обратном преобразовании, и поэтому обычно пишут формулы преобразования в следующем виде:

Xn=m=0N1xme2πiNnm,xm=1Nn=0N1Xne2πiNmn.

Иногда можно встретить симметричную форму записи преобразования

Xn=1Nm=0N1xme2πiNnm,xm=1Nn=0N1Xne2πiNmn.

Матричное представление

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

X=x,

матрица имеет вид:

=1n(111111ωnωn2ωn3ωnn11ωn2ωn4ωn6ωn2(n1)1ωn3ωn6ωn9ωn3(n1)1ωnn1ωn2(n1)ωn3(n1)ωn(n1)2).

Элементы матрицы задаются следующей формулой:

(j,k)=ωn(j1)(k1), где ωn=e2πin.

Собственные числа матрицы — корни четвёртой степени из единицы {1,1,i,i}, имеющие кратность n+44, n+24, n+14 и n14 соответственно, где xокруглённое вниз число x.

Применение к умножению чисел

Дискретное преобразование Фурье вектора (a0;a1;;an1) может быть интерпретировано как вычисление значений многочлена p(x)=a0+a1x++an1xn1 в корнях из единицы x0=1, x1=ωn, x2=ωn2, …, xn1=ωnn1.

Значения многочлена n-й степени в n+1 точках однозначно определяют сам многочлен. В то же время, если p(x)=a и q(x)=b, то (pq)(x)=ab, потому по значениям многочленов p(x) и q(x) можно также определить значения в тех же точках многочлена pq и восстановить его обратным дискретным преобразованием Фурье.

Так как любое число представимо в виде многочлена от основания системы счисления N=an1a1a0=a0+a110++an110n1, умножение двух чисел может быть в свою очередь сведено к умножению двух многочленов и нормализации результата.

Свойства

  1. Линейность
    ax(n)+by(n)aX(k)+bY(k).
  2. Сдвиг по времени
    x(nm)X(k)e2πiNkm.
  3. Периодичность
    X(k+rN)=X(k),r.
  4. Выполняется Теорема Парсеваля.
  5. Обладает спектральной плотностью
    S(k)=|X(k)|2.
  6. x(n),
    X(0),
    Nmod2=0X(N/2). Нулевая гармоника является суммой значений сигнала.

См. также

Литература

Примечания

Шаблон:Примечания

Ссылки

Шаблон:Cite web

Шаблон:Cite web

Шаблон:DSP

  1. Федоренко С. В. - Модификация алгоритма Грецеля-Блейхута Шаблон:Wayback. - Статья. - Журнал Приборостроение. - УДК 621.391