Вычисление периодической, круговой и линейной свертки. Алгоритм быстрой свертки. Вычислительная эффективность.
Свертка является одной из основных операций, выполняемых при решении многих задач теории цифровых систем, а также при их разработке и применении. Задачи, связанные с вычислением свертки, часто встречаются в электротехнике, статистике, оптике и других областях физики. Это – фильтрация, спектральный анализ, преобразование изображений, задачи, связанные с теорией поля (акустика, распространение волн, электричество и магнетизм).
Свертка, кроме того, – основная операция при выполнении интерполяции. При обработке сигналов часто сталкиваются с ситуацией, когда период выборки больше, чем требуется. В этом случае для получения значений между имеющимися отсчетами можно воспользоваться интерполяцией, которая состоит в том, что вычисляется некоторая взвешенная сумма по соседним отсчетам.
Как известно, принято различать периодическую, круговую и линейную (апериодическую) свертки двух последовательностей. Рассмотрим методы вычисления каждой из них.
Пусть имеются две периодические последовательности и с периодом N. И пусть коэффициенты их дискретного ряда Фурье есть и соответственно.
Периодической сверткой этих последовательностей является последовательность определяемая выражением:
(1.173)
Последовательность также является периодической с периодом N. Поэтому периодическую свертку достаточно вычислить на одном периоде.
Коэффициенты дискретного ряда Фурье последовательности будет определяться следующим образом:
(1.174)
Для последовательностей и конечной длительности, ДПФ которых равны и соответственно, круговая (циклическая) свертка будет соответствовать одному периоду последовательности т. е.
(1.175)
где
Соответствующее ДПФ последовательности будет определяться произведением ДПФ исходных последовательностей, т. е.
(1.176)
При малых значениях N возможно и непосредственное вычисление круговой свертки по соответствующей формуле. Однако при последовательностях большой длительности возникают существенные вычислительные трудности. Поэтому в таких случаях для вычисления свертки используют прямое и обратное дискретное преобразование Фурье. С этой целью для заданных последовательностей и вычисляют соответствующие им ДПФ и Полученные последовательности перемножаются. Для последовательности вычисляется обратное ДПФ, что дает искомую последовательность
(1.177)
Если длительность одной из исходных последовательностей равна , а другой – причем то их свертка должна вычисляться для значения большего из чисел и В этом случае последовательность меньшей длительности добавлением нулей преобразуется в последовательность длительности N.
Линейная свертка, представляющая основной интерес для практических приложений, определяется следующим образом:
(1.178)
где и – конечные последовательности длительности N.
Непосредственно проверяется, что имеет длину 2N – 1, т. е. она может иметь самое большое 2N – 1 ненулевых отсчетов.
Если последовательность получается путем нахождения обратного дискретного преобразования Фурье после перемножения ДПФ последовательностей и то каждое из этих преобразований Фурье и должно вычисляться на основе 2N – 1 точек, т. е. в этом случае вычислительная процедура будет выглядеть следующим образом:
(1.179)
Здесь и будет линейной сверткой и
Следует отметить, что линейная свертка была бы получена, если бы ДПФ вычислялось на основе более чем 2N – 1 точек. Но в общем случае линейная свертка не получилась бы, если бы ДПФ вычислялось на основе меньшего числа точек.
Существует три основных метода вычисления круговой свертки. Они отличаются требуемым объемом вычислительных операций и памяти, а также степенью точности, обуславливаемой вычислительными ошибками.
Первый метод, основанный на использовании алгоритмов БПФ и получивший название метода быстрой свертки, приводит к существенному сокращению требуемого числа арифметических операций. Действительно, необходимые расчеты для прямого метода вычисления показывают, что для получения линейной свертки двух N-точечных последовательностей x1(m) и x2(n – m) следует умножить каждое значение x1(m) на каждое значение x2(n – m). Следовательно, N значений x1(m) нужно перемножить с N значениями x2(n – m), в результате чего требуется N N = N2 умножений.
При вычислении линейной свертки тех же двух N-точечных последовательностей с помощью алгоритмов БПФ прибавление необходимых дополняющих нулей означает, что каждая последовательность будет иметь длину 2N – 1 точек. Пусть 2N – 1 2 N. так как число комплексных умножений для N-точечного БПФ равна то для 2N-точечного БПФ необходимо или комплексных умножений. В соответствии с процедурой вычисления свертки требуется вычислить два ДПФ и одно обратное ДПФ, которое можно рассчитать с помощью модифицированного ДПФ. Следовательно, необходимо вычислить 2N-точечных БПФ, включающих в сумме комплексных умножений. Кроме того, для каждого из 2N значений необходимо выполнить комплексное умножение Таким образом, общее число комплексных умножений возросло до Далее комплексное умножение вида требует четырех действительных умножений AC, AD, BC и BD. Значит, в целом необходимо действительных умножений.
В табл. 1.9 сравнивается число действительных умножений, необходимых для вычисления линейной свертки двух последовательностей при различных N. Как видно, быстрая свертка эффективнее прямого метода для значений N 128.
Таблица 1.9
Число действительных умножений при вычислении свертки двух N-точечных последовательностей
№ | Прямой метод | Быстрая свертка | Прямой метод / Быстрая свертка |
8 | 64 | 448 | 0,14 |
16 | 256 | 1088 | 0,24 |
32 | 1024 | 2560 | 0,40 |
64 | 4096 | 5888 | 0,70 |
128 | 16 384 | 13 312 | 1,23 |
256 | 65 536 | 29 636 | 2,21 |
512 | 262 144 | 65 536 | 4,00 |
1024 | 1 048 576 | 143 360 | 7,31 |
2048 | 4 194 404 | 311 296 | 13,47 |
Недостатком этого метода является значительные ошибки округления, большой объем памяти, необходимый для хранения комплексных экспоненциальных коэффициентов, и все ещё значительный объем вычислений.
- Общие принципы получения информации в физических исследованиях. Основные цели обработки сигналов. Преимущества цифровых методов обработки сигналов. Примеры практического применения.
- Содержание, этапы, методы и задачи цифровой обработки сигналов. Основные методы и алгоритмы цос.
- Основные направления, задачи и алгоритмы цифровой обработки сигналов
- Дискретные и цифровые сигналы. Основные дискретные последовательности теории цос.
- Линейные дискретные системы с постоянными параметрами. Импульсная характеристика. Физическая реализуемость и устойчивость.
- Линейные разностные уравнения с постоянными параметрами, их практическое значение и решение.
- Соотношение между z-преобразованием и преобразованием Фурье
- Обратное z-преобразование и методы его нахождения: на основе теоремы о вычетах, разложение на простые дроби и в степенной ряд.
- Передаточная функция дискретных систем. Диаграммы нулей и полюсов. Условие устойчивости.
- Частотная характеристика дискретных систем. Амплитудно-частотная и фазочастотная характеристики.
- Фазовая и групповая задержка. Цифровая частота и единицы измерения частоты, которые используются в цифровой обработке сигналов.
- Общая характеристика дискретного преобразования Фурье. Задачи, решаемые с помощью дпф. Дискретный ряд Фурье.
- Дискретный ряд Фурье
- Свойства дискретных рядов Фурье. Периодическая свертка двух последовательностей.
- Дискретное преобразование Фурье. Основные свойства.
- Общая характеристика ряда и интеграла Фурье, дискретного ряда Фурье и дискретного преобразования Фурье. Равенство Парсеваля.
- Прямой метод вычисления дпф. Основные подходы к улучшению эффективности вычисления дпф.
- Алгоритмы бпф с прореживанием по времени. Основные свойства.
- Двоичная инверсия входной последовательности для
- Алгоритмы бпф с прореживанием по частоте. Вычисление обратного дпф.
- Вычисление периодической, круговой и линейной свертки. Алгоритм быстрой свертки. Вычислительная эффективность.
- Вычисление линейной свертки с секционированием.
- Амплитудный спектр, спектр мощности. Определение и алгоритмы получения.
- Оценка спектра мощности на основе периодограммы. Свойства периодограммы. Методы получения состоятельных периодограммных оценок.
- Основные проблемы цифрового спектрального анализа. Взвешивание. Свойства весовых функций. Модифицированные периодограммные оценки спм.
- 1.6.1. Просачивание спектральных составляющих и размывание спектра
- Взвешивание. Свойства весовых функций
- Паразитная амплитудная модуляция спектра
- Эффекты конечной разрядности чисел в алгоритмах бпф
- Метод модифицированных периодограмм
- Метод Блэкмана и Тьюки получения оценки спектральной плотности мощности. Сравнительная оценка качества методов получения спм.
- Сравнение методов оценки спектральной плотности мощности
- Основные характеристики цифровых фильтров. Рекурсивные и нерекурсивные цифровые фильтры, их преимущества и недостатки.
- Структурные схемы бих-фильтров (прямая и каноническая, последовательная и параллельная формы реализации).
- Структурные схемы ких-фильтров (прямая, каскадная, с частотной выборкой, схемы фильтров с линейной фазой, на основе метода быстрой свертки).
- Проектирование цифровых фильтров. Основные этапы и их краткая характеристика.
- Расчет цифровых бих-фильтров по данным аналоговых фильтров. Этапы и требования к процедурам перехода.
- Общая характеристика аналоговых фильтров-прототипов: Баттерворта, Чебышева I и II типа, Золоторева-Каура (эллиптические). Методика применения билинейного z-преобразования.
- Эффекты конечной разрядности чисел в бих-фильтрах. Ошибки квантования коэффициентов, ошибки переполнения и округления. Предельные циклы.
- Расчет цифровых ких-фильтров: методы взвешивания и частотной выборки.
- Эффекты конечной разрядности чисел в ких-фильтрах.
- Общая структурная схема системы цос. Дискретизация сигналов. Теорема отсчетов.
- Погрешности дискретизации. Выбор частоты дискретизации в реальных условиях. Эффект наложения спектров
- Дискретизация узкополосных сигналов
- Выбор частоты дискретизации на практике
- Квантование сигналов. Погрешность квантования. Отношение сигнал/шум и динамический диапазон при квантовании сигналов. Равномерное и неравномерное квантование
- Анализ ошибок
- Отношение сигнал/шум и динамический диапазон
- Способы реализации алгоритмов и систем цос. Понятие реального времени обработки.
- Особенности цос, влияющие на элементную базу, ориентированной на реализацию цифровых систем обработки сигналов.
- Общие свойства процессоров цифровой обработки сигналов и особенности их архитектуры.
- Архитектура Фон Неймана и гарвардская архитектура в пцос. Преимущества и недостатки.
- Универсальные процессоры цос. Общая характеристика процессоров с фиксированной и плавающей точкой (запятой).
- Основные различия между микроконтроллерами, микропроцессорами и сигнальными процессорами.