Опубликован: 03.06.2019 | Доступ: свободный | Студентов: 493 / 71 | Длительность: 09:11:00
Лекция 16:

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

< Лекция 15 || Лекция 16: 12 || Лекция 17 >

Применяя формулу для \sin \аlpha \cos \beta, получим:

\frac12\sum_{j=0}^{N-1}\sin \left (\frac{(2p+2s+2)(2j+1)\pi}{2N}\right)+\sin \left (\frac{(2s-2p)(2j+1)\pi}{2N}\right)

Используя второе тождество утверждения, упростим суммы:

\frac12\sum_{j=0}^{N-1}\sin \left( \frac{(p+s+1)(2j+1)\pi}{N}\right)=\frac{1-\cos\left(\frac{(p+s+1)2N\pi}{N}\right)}{4\sin\left(\frac{(p+s+1)\pi}{N}\right)}

Так как синус в знаменателе не равен нулю, а числитель обращается в нуль, то сумма исчезнет. Вычисляя вторую сумму, получим:

\frca12\sum_{j=0}{N-1}\sin\left( \frac{(s-p)(2j+1)\pi}{N}\right )=\frac{1-\cod\left(\frac{(s-p)2N\pi}{N}\right )}{4\sin \left (\frac{(s-p)\pi}{N}\right )}

Если р \ne s, то сумма равна нулю, но и когда р = s, то сумма также равна нулю, поскольку каждое слагаемое суммы становится равным нулю.

Мы заключаем, что \tilde u_p*\tilde v_s=0 для всех р, s. Вычисление \tilde u_p*\tilde v_s остается в качестве упражнения.

Обобщая, имеем:

\tilde u_p*\tilde u_s=\tilde v_p*\tilde v_s=\begin{cases}
N/2,&если p=s,\\
0,&если p \ne s.
\end{cases}\;\;
\tilde u_p*\tilde v_s=0 \text{для любых p,s}

Это завершает доказательство теоремы.

Для превращения базиса в ортонормальный базис, разделим каждый вектор на его длину:

u_p=\sqrt{\frac2N}\tilde u_p,\;\; v_p=\sqrt{\frac2N}\tilde v_p

Так как \{u_0, u_1, \dots ,u_{M-1},v_0, v_1, \dots, v_{M-1)\} -базис в R^N, то любой вектор f = (f_0,f_1, \dots, f_{N-1}) можно представить в этом базисе:

f=\sum_{p=0}^{M-1}a_pu_p+b_pv_p

Коэффициенты а_р и b_р в этом выражении называются коэффициентами Фурье вектора f. Дискретное преобразование Фурье (ДПФ) - это преобразование вектора измерений в вектор коэффициентов:

(f_0, f_1, \dots, f_{N-1}) \to (a_0, a_1, \dots, a_{M-1}, b_0, b_1, \dots, b_{M-1})

Изначальный вектор измерений описывает эволюцию сигнала во времени. Каждый коэффициент Фурье соответствует некоторой частоте. Говорят, что ДПФ - это преобразование сигнала из временной области в частотную область.

Нам необходимо решить задачу представления заданного вектора f в виде линейной комбинации векторов \{u_0, u_1, \dots, u_{M-1}v_0, v_1, \dots, v_{M-1}\}. Оказывается, что задача намного проще решается, когда базис векторов является ортонормальным.

Утверждение. Пусть \{w_1, w_2, \dots , w_{M-1}\}-ортонормальный базис в R^N, пусть f - вектор в R^N. Тогда коэффициенты разложения f в линейную комбинацию векторов базиса:

f=c_1w_1+c_2w_2+\dots+c_Nw_N

могут быть найдены как скалярное произведение:

c_j=f*w_j\; for\; j=1,2,\dots, N

Доказательство. Рассмотрим скалярное произведение обеих сторон линейной комбинации и вектора т:

f*w_j=c_1w_1*w_j+c_2w_2*w_j+\dots+c_Nw_N*w_j

Так как базис ортонормальный, то все скалярные произведения в правой части окажутся равными нулю, за исключением произведения w_j*w_j, которое равно 1. Отсюда следует справедливость утверждения f*w_j=c_j.

Из утверждения непосредственно следуют формулы для вычисления коэффициентов Фурье:

a_p=f*u_p=\sqrt{\frac2N}\sum_{j=0}^{N-1}f_j\cos \left(\frac{(2p+1)(2j+1)\pi}{2N}\right),\\
b_p=f*u_p=\sqrt{\frac2N}\sum_{j=0}^{N-1}f_j\sin \left(\frac{(2p+1)(2j+1)\pi}{2N}\right)

Индекс р пробегает значения р = 0,1, ... , М - 1.

Если нам известны коэффициенты Фурье, то можно восстановить исходный сигнал f = (f_0, f_1, \dots , f_{N-1}). Эта процедура называется обратным преобразованием Фурье.

Так как

f=\sum_{p=0}^{M_1}a_pu_p+b_pv_p,

то можно вычислить f_j, взявj-ю компоненту каждого вектора:

f_i= \sqrt{\frac2N}\sum_{p=0}^{M-1}\cos\left(\frac{(2p+1)(2j+1)\pi}{2N}\right )+b_p\sin \left (\frac{(2p+1)(2j+1)\pi}{2N}\right)

Как прямое, так и обратное преобразование Фурье являются линейными трансформациями R^N. При обратном ДПФ вектор (1,0,0, .. . , 0), соответствующий а_0 = 1 переходит в вектор u_0. Аналогично, образы стандартных базисных векторов е_k, являются векторами \{u_0, \dots ,u_{М-1}, v_0, \dots ,v_{М-1}\}. Так как эти вектора ортонормальны, то мы заключаем, что обратное ДПФ является ортогональной линейной трансформацией. Инверсия ортогональной линейной трансформации - ортогональна. Из этого следует, что прямое ДПФ представляет ортогональную линейную трансформацию.

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

Величина коэффициента Фурье показывает, насколько сильно соответствующая частота представлена в сигнале. В частности, когда мы применяем преобразование Фурье к периодическому сигналу, появляются пики со значениями а_р и b_p в точках р, соответствующих обертонам базовой частоты сигнала. Это именно то, что мы видели в спектре диаграммы ДПФ при записи звучания флейты.

Давайте рассмотрим совсем простой пример периодического сигнала, который важен для алгоритма Шора. Зафиксируем два целых числа 0 \le s \le m и рассмотрим следующую последовательность длины N и периодом m:

f_i=\begin{cases}
1,& \text{если i = s mod m,}
0& \text{в противном случае}
\end{cases}

Пусть N/m будет большим числом. Нетрудно видеть, что f_i = 1 для i =s + jm, где j = 0, 1, ... , L - 1. Здесь L - минимальное целое, большее или равное (N - s)/m.

Упражнение. Вычислим ДПФ для последовательности (f_0, f_1, \dots, f_{N-1}) Покажем, что коэффициенты Фурье даются следующими формулами:

a_p= \sqrt{\frac2N}\frac{\sin\left(\frac{(2p+1)(2s+(2L-1)m+1)\pi}{2N}\right)-\sin\left(\frac{(2p+1)(2s-m+1)\pi}{2N}\right)}{2\sin\left(\frac{(2p+1)m\pi}{2N}\right)},\\
b_p= \sqrt{\frac2N}\frac{\cos\left(\frac{(2p+1)(2s-m+1)\pi}{2N}\right)-\cos\left(\frac{(2p+1)(2s+(2L-1)m+1)\pi}{2N}\right)}{2\sin\lefr(\frac{(2p+1)m\pi}{2N}\right)}

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

Давайте проанализируем, когда коэффициенты Фурье, полученные в этом упражнении, являются большими числами. Абсолютное значение числителей в этих формулах не может быть больше чем 2, поскольку значения синуса и косинуса не превосходят 1. Единственная возможность стать большим числом - иметь маленький знаменатель \sin\left(\frac{(2p+1)m\pi}{2N}\right) . Это происходит, когда \frac{(2p+1)m}{2N} близко к целом числу

\frac{(2p+1)m}{2N}\approx K,

Это эквивалентно тому, что

p\approx K*\fracNm-\frac12

Мы видели, что пики в значениях коэффициентов Фурье расположены в точках р, кратных базовой частоте

\omega=\fracNm

Смещением на 1/2 можно пренебречь. Заметьте, что положение пиков определяется периодом m и не зависит от s.

ДПФ широко используется в цифровой обработке сигналов, в частности для сжатия аудио файлов (стандарт МРЗ) и изображений (JРЕG). Давайте вкратце обсудим аудио сжатие.

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

< Лекция 15 || Лекция 16: 12 || Лекция 17 >