Связь ДПФ и ДВПФ. Ядро Дирихле

Содержание

DSPL-2.0 — свободная библиотека алгоритмов цифровой обработки сигналов

Распространяется под лицензией LGPL v3

Страница библиотеки на GitHub

Обнаружили ошибку? Выделите ее мышью и нажмите ctrl+enter
Вводные замечания

В предыдущих параграфах мы рассмотрели ДВПФ S_{\text{двпф}}(\omega) дискретного сигнала s_{\text{двпф}}(n), в общем случае бесконечного во времени, а также ДПФ S_{\text{дпф}}(k), k = 0\ldots N-1, ограниченной во времени выборки сигнала s_{\text{дпф}}(n), n = 0\ldots N-1. Мы специально разделим обозначения сигналов s_{\text{двпф}}(n) и s_{\text{дпф}}(n), а также их спектров S_{\text{двпф}}(\omega) и S_{\text{дпф}}(k) добавлением соответствующих аббревиатур.

Необходимо напомнить, что при вычислении ДВПФ ограниченного во времени сигнала s_{\text{двпф}}(n) = 0 при n<0 и n \geq N, в то время как ДПФ предполагает периодическое повторение s_{\text{дпф}}(n) во времени. Наглядно сигналы s_{\text{двпф}}(n), s_{\text{дпф}}(n), а также их спектры показаны на рисунке 1.

 Сигналы и спектры, демонстрирующие разницу ДВПФ и ДПФ: 
	a — временное представление   и  ;  	б — спектры  и
Рисунок 1. Сигналы и спектры, демонстрирующие разницу ДВПФ и ДПФ:
a — временное представление s_{\textrm{двпф}}(n) и s_{\textrm{дпф}}(n);
б — спектры S_{\text{двпф}}(\omega) и S_{\text{дпф}}(k) \qquad\qquad\qquad\quad\,\,\,\,

Заметим, что s_{\text{двпф}}(n) = s_{\text{дпф}}(n) при n = 0\ldots N-1, что обведено пунктиром на рисунке 1а.

ДВПФ непериодического сигнала s_{\text{двпф}}(n) возвращает S_{\text{двпф}}(\omega) —непрерывную, 2\pi-периодическую функцию частоты \omega, в то время как ДПФ возвращает вектор отсчетов спектра S_{\text{дпф}}(k) (см. рисунок 1б).

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

Получение ДПФ по имеющемуся ДВПФ

Рассмотрим преобразование ДВПФ и ДПФ:

equation 1
(1)
Поскольку s_{\text{двпф}}(n) = s_{\text{дпф}}(n) при n = 0\ldots N-1, как это показано на рисунке 1а, то сравнивая выражения (1) можно заметить, что
equation 2
(2)
Таким образом, можно заключить, что ДПФ получается как результат дискретизации ДВПФ на сетке частот \omega = \frac{2\pi}{N}k. В результате дискретизации ДВПФ, исходный сигнал становится периодическим, аналогично тому как дискретизация сигнала приводит к периодизации его спектральной плотности.

Получение ДВПФ по имеющемуся ДПФ. Ядро Дирихле

При рассмотрении дискретных сигналов, мы говорили, что восстановление непрерывного сигнала по его дискретным отсчетам возможно если избавиться от периодического характера его спектральной плотности при помощи фильтра нижних частот. Аналогично для восстановления непрерывной функции S_{\text{двпф}}(\omega) по дискретным отсчетам ДПФ S_{\text{дпф}}(k) необходимо избавиться от периодического во времени характера сигнала s_{\text{дпф}}(n). Для этого можно прибегнуть к умножению сигнала во времени на непериодический сигнал d_N(n), который для произвольного n имеет вид, показанный на рисунке 2. Заметим, что индекс N в обозначении d_N(n) указывает длину сигнала во времени, а параметр n меняется от минус бесконечности до бесконечности.

Переход от периодического дискретного   сигнала    к непериодическому : 
	а —временно́е представление; б —спектры
Рисунок 2. Переход от периодического дискретного
сигнала s_{\textrm{дпф}}(n) к непериодическому s_{\textrm{двпф}}(n):
а —временно́е представление; б —спектры

Тогда можно записать для любого целого n:

equation 3
(3)
Представим s_{\text{дпф}}(n) и d_N(n) как результат ОДПФ и ОДВПФ, тогда
equation 4
(4)
где D_N(\xi) — ДВПФ d_N(n) (\xi имеет смысл частоты \omega, ниже будет пояснено, почему мы не используем \omega здесь):
equation 5
(5)
Поменяем в (4) операторы суммирования и интегрирования и объединим показатели комплексных экспонент:
equation 6
(6)
Введем обозначение \omega = \frac{2\pi}{N}k + \xi (теперь стало ясно почему мы использовали \xi), тогда \xi = \omega - \frac{2\pi}{N}k, d\xi = d\omega и (6) принимает вид:
equation 7
(7)
Можно заметить, что (7) ничто иное как ОДВПФ, в результате под интегралом находится выражение для S_{\text{двпф}}(\omega):
equation 8
(8)
Мы уже отмечали, что D_N(\omega) представляет собой ДВПФ d_N(n) и задаётся выражением (5). Тогда D_N(\omega) представляет собой сумму первых N членов геометрической прогрессии со знаменателем q = \exp(-j\omega) и первым членом b_0 = 1. Тогда по формуле суммы первых N членов геометрической прогрессии [1] имеем:
equation 9
(9)
Преобразуем (9):
equation 10
(10)
откуда окончательно можно записать:
equation 11
(11)
Выражение (11) носит название ядра Дирихле [2, стр. 109], и представляет собой комплексную периодическую функцию, реальная и мнимая часть которой показана на рисунке 3 для N = 6.

Ядро Дирихле для
Рисунок 3. Ядро Дирихле для N = 6

Ядро Дирихле представляет собой интерполянт, позволяющий восстановить непрерывную периодическую спектральную плотность дискретного сигнала S_{\text{двпф}}(\omega) по N спектральным отсчетам ДПФ:

equation 12
(12)
Периодичность ядра Дирихле по частоте является крайне важным свойством, которое позволяет записать интерполяционную формулу (12) как конечную сумму при использовании отсчетов ДПФ на одном периоде повторения. Периодичность S_{\text{двпф}}(\omega) достигается благодаря периодичности ядра Дирихле.

Численный расчет ДВПФ путем дополнения нулями исходного сигнала

При программном расчете ДВПФ мы не можем получить значения S_{\text{двпф}}(\omega) для континуального множества непрерывной частоты \omega. Мы можем лишь рассчитать значения спектра для конечного набора фиксированных частот. ДПФ позволяет это делать для сетки \omega = \frac{2  \pi}{N}k, k = 0\ldots N-1.

Однако если требуется произвести расчет S_{\text{двпф}}(\omega) для произвольной сетки частот \omega = \frac{2  \pi}{M}m, где M количество частотных точек ДВПФ, m = 0\ldots M-1, то мы можем воспользоваться выражением ДВПФ (1):

equation 13
(13)
Заметим, что (13) отличается от ДПФ тем, что сумма состоит из N слагаемых, а рассчитывается M спектральных отсчетов. Но если мы учтем, что s_{\text{двпф}}(m) = 0 для m \geq N, то можно добавить M-N слагаемых и получим точное выражение ДПФ для сигнала заданного вектором состоящим из M отсчетов, в котором M-N последних элементов нули. Тогда окончательно можно записать:
equation 14
(14)
Использование ДПФ удобно тем, что для ДПФ разработано множество высокоэффективных программ быстрого преобразования Фурье (БПФ), которые позволяют рассчитывать ДПФ значительно эффективнее, чем прямое суммирование (13), или использование интерполяционной формулы (12) с ядром Дирихле.

На практике длину M часто выбирают кратной N, т.е. M = NP. В этом случае производится интерполяция спектра ДПФ, как это показано на рисунке 4.

Дополнение нулями выборки дискретного сигнала: 
	а —добавление нулей во времени; б — спектры ДПФ
Рисунок 4. Дополнение нулями выборки дискретного сигнала:
а —добавление нулей во времени; б — спектры ДПФ

Из рисунка 4 можно видеть, что при расчете ДПФ по N отсчетам, мы получаем только N спектральных отсчетов на одном периоде повторения S_{\text{двпф}}(\omega), показанной пунктирной линией. При дополнении нулями сигнала s(n) до длины NP (в приведенном примере P = 4), мы получим NP спектральных отсчетов ДПФ на одном периоде повторения S_{\text{двпф}}(\omega).

Таким образом, мы можем производить численный расчет одного периода S_{\text{двпф}}(\omega) на сколь угодно частой сетке частот, при дополнении исходного сигнала нулями.

Дополнение нулями можно также пояснить с позиций ДПФ следующим образом. При выводе выражения ДПФ мы раскладывали в ряд Фурье сигнал, периодически повторенный во времени бесконечное число раз. Период повторения сигнала равен N отсчетов, и в результате мы получили дискретные гармоники периодического сигнала на сетке частот \omega = \frac{2  \pi}{N}kk = 0\ldots N-1, т.е. отсчеты ДПФ S(k).

Если мы дополним сигнал нулями до длины M отсчетов, M>N, то это равносильно увеличению периода повторения сигнала до M отсчетов. Что в свою очередь, делает сетку частот при разложении в ряд Фурье более частой, и в результате мы получаем более детальную спектральную картину сигнала, потому что берем дискретные значения ДВПФ на более частотой сетке частот \omega = \frac{2  \pi}{M}m, m = 0\ldots M-1.

Если мы увеличим период повоторения сигнала в P раз, т.е. возьмем M = NP, то сетка частот будет также в P раз чаще, что мы и наблюдаем на рисунке 4.

Необходимо сделать важное замечание. Дополнение нулями не добавляет информации в исходный сигнал s(n), а значит не улучшает разрешающей способности спектрального анализа. И хотя, мы получили дополнительные спектральные отсчеты ДПФ после добавления нулей, но значения этих спектральных отсчетов не могут быть произвольными, а однозначно связаны с N отсчетами ДПФ S_{\text{дпф}}(k) интерполяционной формулой (12).

Понятие бина ДПФ

Рассмотренная взаимосвязь дискретного спектра ДПФ и непрерывного спектра ДВПФ через интерполяционную формулу (12) позволяет сделать вывод, что отсчеты ДПФ не только задают амплитуду и фазу гармоники дискретного сигнала на заданной частоте, а в них заложена информация о поведении непрерывного спектра ДВПФ во всем диапазоне нормированной частоты от -\pi до \pi. Это можно понять из рисунка 3, поскольку ядро Дирихле — непрерывная функция, которая носит периодический затухающе-колебательный характер, а значит, при интерполяции (12), каждый спектральный отсчет ДПФ будет влиять на поведение спектра ДВПФ во всем частотном диапазоне от -\pi до \pi. Для подчеркивания этого спектральные отсчеты ДПФ S_{\text{дпф}}(k) называют бинами ДПФ[1] [2, стр. 83].

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

Выводы

Итак мы рассмотрели однозначную связь спетра ДПФ и ДВПФ. Было показано, что ДПФ S_{\textrm{дпф}}(k) получается как результат дискретизации ДВПФ S_{\textrm{двпф}}(\omega) на одном периоде повторения спектра.

Аналогично была получена интерполяционная формула, позволяющая восстановить ДВПФ спектр S_{\textrm{двпф}}(\omega) как функцию непрерывной частоты \omega используя N спектральных отсчетов ДПФ S_{\textrm{дпф}}(k). В качестве интерполянта выступает периодическая функция (ядро Дирихле).

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

странице обсуждения статьи

Примечания

[1] от англ. bin (ларец или закрома)

Список литературы
[1] Корн Г., Корн Т. Справочник по математике для научных работников и инженеров. Москва, Наука, 1970, 720 с.

[2] Лайонс Р. Цифровая обработка сигналов. Москва, ООО «Бином-Пресс», 2006, 656 c.

[3] Оппенгейм А., Шаффер Р. Цифровая обработка сигналов. Москва, Техносфера, 2012. 1048 с. ISBN 978-5-94836-329-5

[4] Сергиенко А.Б. Цифровая обработка сигналов СПб, Питер, 2002.

Последнее изменение страницы: 14.11.2020 (11:14:34)
Страница создана Latex to HTML translator ver. 5.20.11.14