Метод сохранения перекрытия
В сигналов обработке «перекрытие-сохранение» — это традиционное название эффективного способа оценки дискретной свертки между очень длинными сигналами. и фильтр с конечной импульсной характеристикой (FIR) :
( Уравнение 1 ) |
где h [ m ] = 0 для m вне области [1, M ] . В этой статье используются общие абстрактные обозначения, такие как или при котором подразумевается, что функции следует мыслить в их совокупности, а не в отдельные моменты времени. (см. Convolution#Notation ).

Идея состоит в том, чтобы вычислить короткие сегменты y [ n ] произвольной длины L и объединить эти сегменты вместе. Это требует более длинных входных последовательностей, которые перекрывают следующий входной сегмент. Перекрывающиеся данные «сохраняются» и используются второй раз. [1] Сначала мы опишем этот процесс с помощью обычной свертки для каждого выходного сегмента. Затем мы опишем, как заменить эту свертку более эффективным методом.
Рассмотрим сегмент, начинающийся с n = kL + M , для любого целого числа k , и определим :
Тогда для , и эквивалентно , мы можем написать:
С заменой , задача сводится к вычислению для . Эти шаги проиллюстрированы первыми тремя трассами на рисунке 1, за исключением того, что желаемая часть выходных данных (третья трасса) 1 ≤ j ≤ L. соответствует [Б]
Если мы периодически расширяем x k [ n ] с периодом N ≥ L + M − 1 согласно :
извилины и эквивалентны в регионе . Поэтому достаточно вычислить N -точечную круговую (или циклическую) свертку с в районе [1, N ]. Подобласть [ M +1, L + M ] добавляется к выходному потоку, а остальные значения отбрасываются . Преимущество состоит в том, что круговая свертка может быть вычислена более эффективно, чем линейная свертка, согласно теореме о круговой свертке :
( Уравнение 2 ) |
где :
- DFT N и IDFT N относятся к дискретному преобразованию Фурье и его обратному преобразованию, оцениваемому по N дискретным точкам, и
- L обычно выбирается таким образом, что N = L+M-1 представляет собой целую степень двойки, а преобразования для повышения эффективности реализуются с помощью алгоритма БПФ .
- Эффекты передней и задней кромки круговой свертки перекрываются и добавляются: [С] и впоследствии отброшены. [Д]
Псевдокод
[ редактировать ](Overlap-save algorithm for linear convolution) h = FIR_impulse_response M = length(h) overlap = M − 1 N = 8 × overlap (see next section for a better choice) step_size = N − overlap H = DFT(h, N) position = 0 while position + N ≤ length(x) yt = IDFT(DFT(x(position+(1:N))) × H) y(position+(1:step_size)) = yt(M : N) (discard M−1 y-values) position = position + step_size end
Соображения эффективности
[ редактировать ]
Когда ДПФ и IDFT реализуются с помощью алгоритма БПФ, приведенный выше псевдокод требует около N (log 2 (N) + 1) комплексных умножений для БПФ, произведения массивов и ОБПФ. [И] Каждая итерация создает выходные выборки N-M+1 , поэтому количество комплексных умножений на выходную выборку составляет около :
( Уравнение 3 ) |
Например, когда и Уравнение 3 равно тогда как прямая оценка уравнения 1 потребует до комплексные умножения на выходную выборку, худший случай — когда оба и являются комплексными. Также обратите внимание, что для любого заданного Уравнение 3 имеет минимум по отношению к На рисунке 2 представлен график значений которые минимизируют уравнение 3 для диапазона длин фильтра ( ).
Вместо уравнения 1 мы также можем рассмотреть применение уравнения 2 к длинной последовательности длины образцы. Общее количество комплексных умножений будет:
Для сравнения, количество комплексных умножений, требуемых алгоритмом псевдокода, равно:
Следовательно, стоимость метода перекрытия-сохранения масштабируется почти так же, как в то время как стоимость одной большой круговой свертки почти .
Перекрытие – отбросить
[ редактировать ]Перекрытие – отбросить [2] и перекрытие – лом [3] — менее часто используемые метки для того же метода, который описан здесь. Однако эти метки на самом деле лучше (чем restart-save ) отличать от перекрытия-add , потому что оба метода «сохраняют», а отбрасывает только один. «Сохранить» просто относится к тому факту, что M — 1 входных (или выходных) выборок из сегмента k + 1 необходимо для обработки сегмента k .
Расширение перекрытия – сохранить
[ редактировать ]Алгоритм перекрытия-сохранения можно расширить, включив в него другие распространенные операции системы: [Ф] [4]
- дополнительные каналы IFFT могут быть обработаны дешевле, чем первый, за счет повторного использования прямого FFT.
- Частоту дискретизации можно изменить, используя прямое и обратное БПФ разного размера.
- частотный перевод (смешивание) может быть осуществлен путем перестановки элементов разрешения по частоте.
См. также
[ редактировать ]Примечания
[ редактировать ]- ^ Рабинер и Голд , рис 2.35, четвертый след.
- ^ Перенос нежелательных краевых эффектов на последние выходные данные M-1 является потенциальным удобством во время выполнения, поскольку IDFT можно вычислить в буфер, а не вычисляться и копироваться. Тогда краевые эффекты могут быть перезаписаны следующим IDFT. В последующей сноске объясняется, как осуществляется сдвиг, путем временного сдвига импульсной характеристики.
- ^ Не путать с методом Overlap-add , который сохраняет отдельные эффекты передней и задней кромки.
- ^ Краевые эффекты можно переместить с передней части вывода IDFT на заднюю, заменив с это означает, что буфер длины N циклически сдвигается (вращается) выборками M-1. Таким образом, элемент h(M) находится в n=1. Элемент h(M-1) находится в n=N. h(M-2) находится при n=N-1. И т. д.
- ^ Алгоритм БПФ Кули – Тьюки для N = 2 к требуется (N/2) log 2 (N) – см. БПФ – Определение и скорость
- ^ Карлин и др. 1999 , стр. 31, столбец 20.
Ссылки
[ редактировать ]- ^
«Обработка STFT с перекрытием (OLA) | Обработка спектрального аудиосигнала» . www.dsprelated.com . Проверено 2 марта 2024 г.
Название «сохранение с перекрытием» происходит от того факта, что выборки L-1 предыдущего кадра [здесь: выборки M-1 текущего кадра] сохраняются для вычисления следующего кадра.
- ^ Харрис, Ф.Дж. (1987). Д.Ф. Эллиот (ред.). Справочник по цифровой обработке сигналов . Сан-Диего: Академическая пресса. стр. 633–699. ISBN 0122370759 .
- ^ Фреркинг, Марвин (1994). Цифровая обработка сигналов в системах связи . Нью-Йорк: Ван Ностранд Рейнхольд. ISBN 0442016166 .
- ^ Боргердинг, Марк (2006). «Превращение перекрытия–сохранения в набор фильтров многополосного микширования и понижающей дискретизации» . Журнал обработки сигналов IEEE . 23 (март 2006 г.): 158–161. дои : 10.1109/MSP.2006.1598092 .
- Рабинер, Лоуренс Р.; Голд, Бернард (1975). «2,25» . Теория и применение цифровой обработки сигналов . Энглвуд Клиффс, Нью-Джерси: Прентис-Холл. стр. 63–67 . ISBN 0-13-914101-4 .
- патент США 6898235 , Карлин, Джо; Коллинз, Терри и Хейс, Питер и др., «Устройство перехвата и пеленгации широкополосной связи с использованием гиперканализации», опубликовано 10 декабря 1999 г., выпущено 24 мая 2005 г. , также доступно по адресу https://patentimages.storage.googleapis. com/4d/39/2a/cec2ae6f33c1e7/US6898235.pdf
Внешние ссылки
[ редактировать ]- Доктор Дипа Кундур, «Добавление перекрытия и сохранение перекрытия» , Университет Торонто.