Разностные фильтры

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

Результат показывает, насколько «резко» или «плавно» меняется яркость изображения в каждой точке, а значит, вероятность нахождения точки на грани, а также ориентацию границы. На практике, вычисление величины изменения яркости (вероятности принадлежности к границе) надежнее и проще в интерпретации, чем расчет направления.

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

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

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

Строго говоря, оператор использует ядра 3×3, с которыми сворачивают исходное изображение для вычисления приближенных значений производных по горизонтали и по вертикали. Формально оператор Собеля определяется следующим образом:

Пусть A исходное изображение, а Gx и Gy - два изображения, где каждая точка содержит приближенные производные по x и по y. Они вычисляются следующим образом:

где * обозначает двухмерную операцию свертки (операцию линейной фильтрации, рассмотренную ранее).

Координата x здесь возрастает «направо», а y — «вниз». В каждой точке изображения приближенное значение величины градиента можно вычислить, используя полученные приближенные значения производных:

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

где, к примеру, угол Θ равен нулю для вертикальной границы, у которой тёмная сторона слева.

Операции свертки Gx и Gy можно использовать отдельно для нахождения вертикальных и горизонтальных границ. На рис. 4.21 приведен пример применения свертки Gx (рис. 4.21, б) и Gy (рис. 4.21, в) к исходному изображению (рис. 4.21, а). В случае совместного использования двух операций свертки Gx и Gy можем получить результат представленный на рис. 4.22.

    а)     б)     в)

Рис. 4.21. Пример нахождения вертикальных и горизонтальных границ

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

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

 

 

Рис. 4.22. Пример использования оператора Собеля

Кроме фильтра Собеля можно использовать оператор Прюита (Prewitt) или оператор Щарра (Scharr), подобные алгоритму оператора Собеля, за исключением использования других матриц.

У алгоритмов нахождения границ существует несколько недостатков. Главный из них - неопределенность в выборе величины порога. Для разных частей изображения приемлемый результат обычно получается при существенно разных пороговых значениях. Кроме того, разностные фильтры очень чувствительны к шумам изображения.