Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
фильтр Гаусса OpenCL.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1 Мб
Скачать
☆

1. Фильтры

Цифровой фильтр — любой фильтр, обрабатывающий цифровой сигнал с целью выделения и/или подавления определённых частот этого сигнала. В отличие от цифрового, аналоговый фильтр имеет дело с аналоговым сигналом, его свойства не дискретны, соответственно передаточная функция зависит от внутренних свойств составляющих его элементов. Особую роль среди цифровых фильтров играют фильтры нижних частот (ФНЧ). ФНЧ – фильтр, эффективно пропускающий частотный спектр сигнала ниже некоторой частоты (частоты среза), и уменьшающий (или подавляющий) частоты сигнала выше этой частоты. Степень подавления каждой частоты зависит от вида фильтра. Широко применяется как аппаратная (на основе специализированных микросхем или FPGA), так и программная (на базе процессоров общего назначения или сигнальных процессоров) реализация фильтров нижних частот. Мы же будем рассматривать различные варианты программной реализации одного из ФНЧ - фильтра Гаусса.

1.1 Фильтр Гаусса

В электронике и обработке сигналов, фильтром Гаусса называют фильтр, чья импульсная характеристика является функцией Гаусса. Импульсная характеристика - выходной сигнал динамической системы как реакция на входной сигнал, то есть наши данные (импульс). Гауссов фильтр спроектирован таким образом, чтобы свести к минимуму отклонения от входных данных переходной функции, реакцию системы на входное ступенчатое воздействие при нулевых начальных условиях во время нарастания и спада. 

Такое поведение связано с тем, что фильтр Гаусса имеет минимальную групповую задержку, меру прохождения данных через ядро фильтра. Математически, фильтр Гаусса представляет собой свёртку входного сигнала и функции Гаусса. Это преобразование также известно как преобразование Вейерштрасса. 

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

Стоит отметить весьма ограниченную скорость фильтра Гаусса при реализации с помощью явного метода, особенно заметную на больших объёмах данных.

1.2 Базовый случай фильтра Гаусса

Импульсная характеристика одномерного фильтра Гаусса может быть представлена в виде:

.

А со среднеквадратичным отклонением:

.

Для двумерного случая мы представляем фильтр как произведение двух одномерных случаев, поэтому получим:

.

где x -  расстояние от центра по горизонтальной оси, y - расстояние от центра по вертикальной оси, σ- среднеквадратичное отклонение распределения гаусса.

 Рассмотрим более общий случай. Результирующая формула будет иметь следующий вид для n-мерного случая:

Однако для реализации данное определение может быть нецелесообразным в виду непрерывности. Поэтому в дальнейшем можем сделать некоторые упрощения.

Так как гауссовское ядро обладает свойствами отделимости 

,

то n-мерная операция свёртки может быть разбита на множество одномерных применений гауссова ядра для каждого измерения:

, где

.

и где t является корнем дисперсии и равно σ2.  Свойство отделимости на практике имеет большое значение, так как позволяет упростить вычисления и привести их к одномерному случаю. Далее будем рассматривать именно его.

Для реализации одномерного шага сглаживания наиболее простым способом является операция свёртки  дискретного сигнала и гауссового ядра:

,

где

.

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

,

для M выбрано достаточно большим, что:

.

Общий выбор выбора M заключается в создании зависимости её от дисперсии, к примеру:

где С зачастую выбирается где-то между 3 и 6.

Использование заданного гауссова ядра может привести к проблемам точности в случаях, когда важны точность и надёжность. При незначительной роли погрешности при вычислениях (10 - 6 до 10 - 8) , ошибки вносимые ограничением ядра незначительны. Однако если точность важна, то есть более лучшие альтернативы гауссову ядру как оконной функции, к примеру, оконные функции Хэмминга, Блэкмана, Кайзера (см. [5]) будут меньше изменять спектр, чем это сделает ядро гаусса. А так как функция Гаусса быстро убывает на концах, то рассматривание значений на больше 10 - 8 не является целесообразным.