Учебники

DSP — круговая свертка DFT

Давайте возьмем две последовательности конечной длительности x 1 (n) и x 2 (n), имеющие целую длину как N. Их ДПФ — X 1 (K) и X 2 (K) соответственно, что показано ниже:

X1(K)= sumN1n=0x1(n)e fracj2 PiknN quadk=0,1,2...N1 X2(K)= sumN1n=0x2(n)e fracj2 PiknN quadk=0,1,2...N1

Теперь мы попытаемся найти ДПФ другой последовательности x 3 (n), которая задается как X 3 (K)

X3(K)=X1(K) timesX2(K)

Взяв IDFT из вышеперечисленного, мы получаем

x3(n)= frac1N displaystyle sum limitN1n=0X3(K)e fracj2 PiknN

Решив приведенное выше уравнение, наконец, получим

x3(n)= displaystyle sum limitN1m=0x1(m)x2[((nm))N] quadm=0,1,2...N1

Точки сравнения Линейная свертка Круговая свертка
перевод Линейное смещение Круговое смещение
Образцы в результате свертки N1+N21 Max(N1,N2)
Нахождение отклика фильтра Возможный Возможно с нулевым заполнением

Методы круговой свертки

Как правило, есть два метода, которые приняты для выполнения круговой свертки, и они —

  • Метод концентрических окружностей,
  • Матричный метод умножения.

Метод концентрических кругов

Пусть x1(n) и x2(n) — две заданные последовательности. Для круговой свертки x1(n) и x2(n) выполняются следующие шаги:

  • Возьмите два концентрических круга. Нанесите N выборок x1(n) на окружность внешнего круга (сохраняя равные расстояния последовательных точек) в направлении против часовой стрелки.

  • Для построения графика x2(n) на внутреннем круге нанесите N выборок x2(n) по часовой стрелке, начиная с той же точки, что и 0- й образец x1(n).

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

  • Вращайте внутренний круг против часовой стрелки с одним образцом за один раз.

Возьмите два концентрических круга. Нанесите N выборок x1(n) на окружность внешнего круга (сохраняя равные расстояния последовательных точек) в направлении против часовой стрелки.

Для построения графика x2(n) на внутреннем круге нанесите N выборок x2(n) по часовой стрелке, начиная с той же точки, что и 0- й образец x1(n).

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

Вращайте внутренний круг против часовой стрелки с одним образцом за один раз.

Метод умножения матриц

Матричный метод представляет две заданные последовательности x1(n) и x2(n) в матричной форме.

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

Другая последовательность представлена ​​в виде матрицы столбцов.

Умножение двух матриц дает результат круговой свертки.