Матричные фильтры обработки изображений. Методы сегментации изображений. Значения div и offset

  • 14.05.2019

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

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

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

Линейные фильтры

Линейные фильтры представляют собой семейство фильтров, имеющих очень простое математическое описание. Вместе с тем они позволяют добиться самых разнообразных эффектов. Будем считать, что задано исходное полутоновое изображение A , и обозначим интенсивности его пикселей A (x , y ). Линейный фильтр определяется вещественнозначной функцией F , заданной на растре. Данная функция называется ядром фильтра, а сама фильтрация производится при помощи операции дискретной свертки (взвешенного суммирования):

Результатом служит изображение B . В приведенной формуле не определены пределы суммирования. Обычно ядро фильтра отлично от нуля только в некоторой окрестности N точки (0, 0). За пределами этой окрестности F (i , j ) или в точности равно нулю, или очень близко к нему, так что можно им пренебречь. Поэтому суммирование производится по (i , j ) Є N , и значение каждого пикселя B (x , y ) определяется пикселями изображения A , которые лежат в окне N , центрированном в точке (x , y ) (обозначим это множество N (x , y )). Ядро фильтра, заданное на прямоугольной окрестности N , может рассматриваться как матрица m ×n , где длины сторон являются нечетными числами. При задании ядра матрицей M kl , ее следует центрировать:

Также нуждается в дополнительном прояснении ситуация, когда пиксель (x , y ) находится в окрестности краев изображения. В этом случае A (x +i , y +j ) может соответствовать пикселю A , лежащему за границами изображения A . Данную проблему можно разрешить несколькими способами:



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

§ не включать соответствующий пиксель в суммирование, распределив его вес F (i , j ) равномерно среди других пикселей окрестности N (x , y );

§ доопределить значения пикселей за границами изображения при помощи экстраполяции;

§ доопределить значения пикселей за границами изображения, при помощи зеркального отражения.

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

Сглаживающие фильтры

Результатом применения сглаживающего фильтра является размытие изображения, устранение резких цветовых переходов. Простейший прямоугольный сглаживающий фильтр радиуса r задается при помощи матрицы размера (2r + 1) × (2r + 1), все значения которой равны:

,

а сумма по всем элементам матрицы равна, таким образом, единице. При фильтрации с данным ядром значение пикселя заменяется на усредненное значение пикселей в квадрате со стороной 2r +1 вокруг него. Пример фильтрации при помощи прямоугольного фильтра приведен на рис. 4.19.

а)
б)

Рис. 4.19. Пример использования сглаживающего фильтра

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


.

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

Как видим из приведенного примера, сглаживающие фильтры могут применяться для устранения лестничного эффекта, а также для шумоподавления.

Шум – дефект на изображении, вносимый фотосенсорами и электроникой устройств, или возникающий при использовании аналоговых устройств. Шум на изображении проявляется в виде случайным образом расположенных элементов растра (точек), имеющих размеры близкие к размеру пикселя. Шум отличается от изображения более светлым или тёмным оттенком серого и цвета и/или по цвету. Причиной появления шумов на изображении является: зернистость плёнки, грязь, пыль, царапины, отслоение фотографической эмульсии. Если рассматривать цифровые устройства то причиной возникновения цифрового шума является: тепловой шум матрицы, шум переноса заряда, шум квантования АЦП, усиление сигналов в цифровом фотоаппарате, грязь, пыль на сенсоре.

Применение линейной фильтрации с прямоугольным ядром имеет существенный недостаток: пиксели на расстоянии r от обрабатываемого оказывают на результат тот же эффект, что и соседние. Более эффективное шумоподавление можно осуществить, если влияние пикселей друг на друга будет уменьшаться с расстоянием. Этим свойством обладает гауссовский фильтр с ядром:


Гауссовский фильтр имеет ненулевое ядро бесконечного размера. Однако ядро фильтра очень быстро убывает к нулю при удалении от точки (0, 0), и потому на практике можно ограничиться сверткой с окном небольшого размера вокруг (0, 0) (например, взяв радиус окна равным 3σ ).

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

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

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

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

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

Пусть – значение яркости изображения – полезного сигнала на пересечении i -ой строки и j -го столбца, а наблюдаемое на входе фильтра изображение описывается моделью:

Здесь – значение помехи в точке с координатами (i,j) , f() – функция, описывающая взаимодействие сигнала и помехи, а I и J – число строк и столбцов в кадре соответственно.

На рисунке 1 показаны примеры окрестностей различных типов, изображенные в виде совокупностей точек. Центром окрестностей, рабочей точкой, в которой осуществляется обработка, является точка с координатами (i,j) .

Рис. 1 Примеры окрестностей различных видов

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

При линейной фильтрации выходной эффект определяется линейной комбинацией входных данных:

В этом выражении – результат фильтрации полезного сигнала в точке кадра с координатами (i,j) , S – множество точек, образующих окрестность, – весовые коэффициенты, совокупность которых представляет собой двумерную импульсную характеристику (ИХ). Если область S конечна, то импульсная характеристика имеет конечную длину и фильтр называется КИХ-фильтром. В противном случае импульсная характеристика имеет бесконечную длину, а фильтр называется БИХ-фильтром. Импульсная характеристика не зависит от координат точки, в которой определяется выходной эффект. Процедуры обработки изображений, обладающие свойством независимости от координат, называются однородными (изопланатичными).

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

которое является дополнительным требованием к импульсной характеристике фильтра.

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

Результат линейной фильтрации для данного окна (для данного центрального пиксела) описывается следующей простой формулой:

$$ \begin{gather} \tag{1} \mbox{Im}" = \sum\limits_{i= -\textrm{hWinX}}^{\textrm{hWinX}}~\sum\limits_{j= -\textrm{hWinY}}^{\textrm{hWinY}} {\mbox{Im}\cdot \mbox{Mask}}, \end{gather} $$

где $\mbox{hWinX} = [\mbox{WinX}/2]$, $\mbox{hWinY} = [\mbox{WinY}/2]$ - полуширина и полувысота окна фильтрации соответственно (в случае окна $3\times 3$ обе величины равны 1).

Результат применения операции (1) ко всем пикселам изображения Im$$ называется $\it{сверткой}$ изображения Im с маской Mask.

Скользящее среднее в окне.

Простейшим видом линейной оконной фильтрации в пространственной области является \it{скользящее среднее} в окне. Результатом такой фильтрации является значение математического ожидания, вычисленное по всем пикселам окна. Математически это эквивалентно свертке с маской, все элементы которой равны $1/n$, где $n$ - число элементов маски. Например, маска скользящего среднего размера $3\times 3$ имеет вид

$$ \frac{1}{9}\times \begin{vmatrix} 1&1&1\cr 1&1&1\cr 1&1&1 \end{vmatrix}. $$

Рассмотрим пример фильтрации зашумленного полутонового изображения фильтром "скользяшее среднее". Изображения зашумлены гауссовским аддитивным шумом (рис. 2 - 8).

На рис. 1 - 6 приводятся примеры фильтрации полутонового изображения с различными степенями зашумления средним фильтром с размером окна $3\times 3$. Как видно из примера, фильтр "скользящее среднее" обладает меньшей способностью к подавлению шумовой компоненты по сравнению с ранее рассмотренным медианным фильтром $3\times 3$.

Рассмотрим скользящее среднее с большими размерами окна фильтрации. На рис. 23 - 28 приводится пример медианной фильтрации с различными размерами апертуры.

Как видно из рис. - 12, с увеличением размера окна растет способность медианного фильтра подавлять шумовую компоненту. Однако при этом нарастает и эффект кажущейся "расфокусировки" изображения (рис. 11, 12) за счет размытия краев видимых объектов. Этого специфически присущего линейным фильтрам эффекта размытия мы также не наблюдали в случае нелинейной ранговой фильтрации.

Гауссовская фильтрация.

В предыдущем разделе мы рассмотрели "вырожденный" случай линейной фильтрации с однородной маской. Между тем, сама идея свертки изображения с весовой матрицей аналогична ранее рассмотренной идее введения весовой матрицы во взвешенных процентильных фильтрах. Повысить устойчивость результатов фильтрации на краях областей можно, если придать более близким точкам окрестности большее влияние на окончательный результат, чем дальним. Примером реализации этой идеи для окна размера $3\times 3$ является маска

$$ \frac{1}{16}\times \begin{vmatrix} 1&2&1\cr 2&4&2\cr 1&2&1 \end{vmatrix}. $$

Такая маска называется гауссовой; соответственно, и использующий ее линейный фильтр также называется $\it{гауссовым}$. Используя дискретные приближения двумерной гауссовой функции, можно получить и другие гауссовы ядра большего размера. Обратите внимание на то, что $\it{сглаживающие}$ или $\it{фильтрующие}$ маски линейных фильтров должны иметь сумму всех элементов, равную $1$. Данное $\it{условие нормировки}$ гарантирует адекватный отклик фильтра на постоянный сигнал (постоянное изображение Im$ = \const$).

На рис. 13 - 15 приведен пример гауссовой линейной фильтрации зашумленного изображения.

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

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

Линейные фильтры имеют очень простое математическое описание. Будем считать, что задано исходное полутоновое изображение A, и обозначим интенсивности его пикселей A(x, y). Линейный фильтр определяется вещественнозначной функцией h (ядром фильтра), заданной на растре. Сама фильтрация производится при помощи операции дискретной свертки (взвешенного суммирования):

B(x, y) = h(i, j) ③③A(x, y) = h(i, j) A(x-i, y-j). (17.3.1)

Результатом служит изображение B. Обычно ядро фильтра отлично от нуля только в некоторой окрестности N точки (0, 0). За пределами этой окрестности h(i, j) равно нулю, или очень близко к нему и им можно пренебречь. Суммирование производится по (i, j)  N, и значение каждого пикселя B(x, y) определяется пикселями изображения A, которые лежат в окне N, центрированном в точке (x, y) (обозначение - множество N(x, y)). Ядро фильтра, заданное на прямоугольной окрестности N, может рассматриваться как матрица m на n, где длины сторон являются нечетными числами. При задании ядра матрицей ее следует центрировать. Если пиксель (x, y) находится в окрестности краев изображения, то координаты A(x-i, y-j) для определенных (i, j) могут соответствовать несуществующим пикселям A за пределами изображения. Данную проблему можно разрешить несколькими способами.

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

Не включать отсутствующий пиксель в суммирование, распределив его вес h(i, j) равномерно среди других пикселей окрестности N(x, y).

Доопределить значения пикселей за границами изображения при помощи экстраполяции.

Доопределить значения пикселей за границами изображения, при помощи зеркального продолжения изображения.

Выбор способа производится с учетом конкретного фильтра и особенностей изображения.

Сглаживающие фильтры. Простейший прямоугольный сглаживающий фильтр радиуса r задается при помощи матрицы размера (2r+1) × (2r+1), все значения которой равны 1/(2r+1) 2 , а сумма значений равна единице. Это двумерный аналог низкочастотного одномерного П-образного фильтра скользящего среднего. При фильтрации с таким ядром значение пикселя заменяется усредненным значением пикселей в квадрате со стороной 2r+1 вокруг него. Пример маски фильтра 3× 3:

.

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

Шумоподавление при помощи прямоугольного фильтра имеет существенный недостаток: все пиксели в маске фильтра на любом расстоянии от обрабатываемого оказывают на результат одинаковый эффект. Несколько лучший результат получается при модификации фильтра с увеличением веса центральной точки:

.

Более эффективное шумоподавление можно осуществить, если влияние пикселей на результат будет уменьшаться с увеличением расстояния от обрабатываемого. Этим свойством обладает гауссовский фильтр с ядром: h(i, j) = (1/2 2) exp(-(i 2 +j 2)/2   Гауссовский фильтр имеет ненулевое ядро бесконечного размера. Однако значения ядра фильтра очень быстро убывает к нулю при удалении от точки (0, 0), и потому на практике можно ограничиться сверткой с окном небольшого размера вокруг (0, 0), например, взяв радиус окна равным 3σ.

Гауссовская фильтрация также является сглаживающей. Однако, в отличие от прямоугольного фильтра, образом точки при гауссовой фильтрации будет симметричное размытое пятно, с убыванием яркости от середины к краям. Степень размытия изображений определяются параметром σ.

Контрастоповышающие фильтры . Если сглаживающие фильтры снижают локальную контрастность изображения, размывая его, то контрастоповышающие фильтры производят обратный эффект и, по существу, являются фильтрами высоких пространственных частот. Ядро контрастоповышающего фильтра в точке (0, 0) имеет значение, большее 1, при общей сумме значений, равной 1. Например, контрастоповышающими фильтрами являются фильтры с ядром, задаваемым матрицами:

. .

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

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

Простейшим дифференциальным оператором является взятие производной по x-координате d/dx, который определен для непрерывных функций. Распространенными вариантами аналогичных операторов для дискретных изображений являются фильтры Прюита (Prewitt) и Собеля (Sobel):

. .

Фильтры, приближающие оператор производной по y-координате d/dy, получаются путем транспонирования матриц.

Простейший алгоритм вычисления нормы градиента по трем смежным точкам:

G(x, y) =
.

Применяется также упрощенная формула вычислений:

Вычисление нормы градиента по четырем смежным точкам (оператор Робертса):

В алгоритме Собеля используется восемь отсчетов яркости в окрестностях центральной точки:

G(x, y) =
, G(x, y) 
,

Gx x , y = [ A x -1, y -1 +2 A x -1, y + A x -1, y +1 ] - [ A x +1, y -1 +2 A x +1, y + A x +1, y +1 ],

Gy x,y = - .

Наряду с более точным определением нормы градиента алгоритм Собеля позволяет определять и направление вектора градиента в плоскости анализа изображения в видеугла  между вектором градиента и направлением строк матрицы:

(x, y) = argtg(Gy x,y /Gx x,y).

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

Аналогично вышеприведенным фильтрам, по методу конечных разностей можно составить фильтры для других дифференциальных операторов. В частности, важный для многих приложений дифференциальный оператор Лапласа (лапласиан) = 𝝏 2 /𝝏x 2 + 𝝏 2 /𝝏y 2 можно приблизить для дискретных изображений фильтром с матрицей (один из вариантов):

.

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

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

Двумерная циклическая свертка. Как и для одномерных сигналов, двумерная свертка может выполняться в области пространственных частот с использованием алгоритмов быстрого преобразования Фурье и перемножением двумерных спектров изображения и ядра фильтра. Она также является циклической, и выполняется обычно в скользящем варианте. С учетом цикличности, для вычисления постоянного шаблона спектра ядра размеры маски фильтра ядра удваиваются по осям и дополняются нулями, и эти же размеры маски используются для выделения скользящего по изображению окна, в пределах которого и выполняется БПФ. Реализация КИХ фильтра с помощью БПФ особенно эффективна, если фильтр имеет большую опорную область.

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

Введем понятие M-окрестности элемента изображения A(x, y), который является для этой окрестности центральным. В простейшем случае M-окрестность содержит N-пикселей – точки, попадающие в маску фильтра, включая (или не включая) центральный. Значения этих N-элементов можно расположит в вариационном ряду V(r), ранжированном по возрастанию (или убыванию), и вычислить определенные моменты этого ряда, например, среднее значение яркости m N и дисперсии d N . Вычисление выходного значения фильтра, которым заменяется центральный отсчет, выполняется по формуле:

B(x, y) = А(x, y) + (1-)m N . (17.3.2)

Значение коэффициента  связывается определенной зависимостью со статистикой отсчетов в окне фильтра, например:

d N /(d N + k d S), (17.3.3)

где d S – дисперсия шумов по изображению в целом или по S-окрестности при S > M и MS, k - константа доверия дисперсии S-окрестностей. Как следует из этой формулы, при k=1 и d N  d S имеет место   0.5, а значение B(x, y) = (А(x, y) + m N)/2, т.е. складываются в равной степени от значений центрального отсчета и среднего значения пикселей его M-окрестности. При увеличении значений d N происходит увеличение вклада в результат значения центрального отсчета, при уменьшении – значения m N . Весомость вклада средних значений по M-окрестности можно изменять значением коэффициента k.

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

Наиболее простыми и распространенными типами нелинейных фильтров для обработки изображений являются пороговые и медианные фильтры.

Пороговая фильтрация задается, например, следующим образом:

B(x, y) =

Величина p является порогом фильтрации. Если величина центральной точки фильтра превышает среднее значение отсчетов m N в ее М-окрестности на величину порога, то она заменяется средним значением. Значение порога может быть как константой, так и функционально зависимым от величины центральной точки.

Медианная фильтрация определяется следующим образом:

B(x, y) = med {M(x, y)},

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

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

Фильтры экстремумов определяются по правилам:

B min (x, y) = min {M(x, y)},

B max (x, y) = max {M(x, y)},

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

Обзор методов фильтрации и сегментации цифровых изображений

Источник: Стругайло В.В. Обзор методов фильтрации и сегментации цифровых изображений // Наука и образование. Электронное научно-технические издание. // Московский автомобильно-дорожный государственный технический университет, 2012. — С. 270-281.

Введение

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

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

Фильтрация изображений

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

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

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

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

При осуществлении линейной фильтрации отклик маски задается суммой произведений пикселей в области покрытия фильтра. В качестве линейного сглаживающего фильтра используется усредняющий фильтр выходным значением, которого является среднее значение по окрестности маски фильтра . Подобный фильтр используется для задач удаления зернистости изображения вызванной импульсным шумом . Общая формула отклика g(x, y) усредняющего фильтра, предназначенного для фильтрации изображения f с размерами M×N, имеет вид :

где w(s, t) — элемент ядра свертки изображения, имеющей размеры m×n, s∈[−m/2, m/2], t∈[−n/2, n/2] — координаты ядра свертки по оси абсцисс и ординат; x=0,1,2,..,M−1, y=0,1,2,..,N−1 — координаты исходного изображения f.

В форме удобной для программного представления подобный фильтр можно представить в виде:

где — элемент матрицы изображения после фильтрации; — элемент массива ядра свертки изображения, имеющий размеры m×n; — элемент матрицы исходного изображения.

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

Среднее значение яркости вычисляется для центрального пикселя маски W i,j , содержащей значения яркости исходного изображения в покрытой маской локальной области изображения по формуле:

Дисперсия маски равна:

В данном алгоритме для каждого нового положения окна маски заново вычисляются соответствующие значения.

Сглаживание шума оценивается через среднее квадратичное отклонение:

На рисунке 1 приведены результаты фильтрации при наложении импульсного шума на цифровое изображение. На рисунке 2 представлены результаты фильтрации наложенного на цифровое изображение гауссовского белого шума.

Рисунок 1 — Результаты фильтрации импульсного шума на изображении


Рисунок 2 — Результаты фильтрации белого шума на изображении

Методы сегментации изображений

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

Сегментация решает в общем смысле две основные задачи :

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

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

Разделение изображения на части базируется на идеях, основанных на резких перепадах яркости. Изменение формы описания элементов изображения основывается на разделении изображения на однородные области с учетом заранее выбранных критериев .

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

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

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

Гистограммные методы основаны на выборе минимальных и максимальных значений или интервалов между экстремумами .

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

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

Методы водоразделов заключается в поиске линий разделяющих локальные минимумы и максимумы значений яркостей элементов изображения .

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

  • перекрестный оператор Робертса (Roberts" Crossoperator);
  • операторПревитта (Prewitt method, Compass Edge Detector);
  • операторСобела (Sobel operator).

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

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

где — элемент матрицы исходного изображения.

Оператор Собела использует восемь отсчетов яркости в области анализируемого элемента:

Матрицы оператора Собела имеют вид :

где: E — матрица исходного изображения.

В программном представлении изображения :

Оператор Превитта подобен оператору Собела и отличается от него маской. Матрицы оператора Собела имеют вид :

В качестве методов основанных на производной второго порядка выделяют оператор Лапласиана . Данный оператор обнаруживает границы в местах смены знака производной функции яркости. Но оператор лапласиана очень чувствителен к шуму. Кроме того, использование модуля лапласиана приводит к удвоению контуров, что дает нежелательный эффект и усложняет сегментацию . С целью уменьшить влияние шума часто используют лапласиан в сочетании со сглаживанием, например, по методу Гаусса. Такое сочетание называют оператором лапласиан гауссиана (LaplacianofGaussian — LoG) .

Маска оператора Лапласиана гауссиана создается по формуле:

где σ — среднеквадратичное отклонение распределения Гаусса. Маска фильтра имеет вид:

где a — параметр в диапазоне .

Еще одним часто реализуемым программно методом является Canny . Фактически это набор последовательно применяемых алгоритмов. Данный подход устойчивый к шуму и дает, как правило, лучшие результаты по сравнению с градиентными методами. Но, так как это в принципе набор алгоритмов, то и быстродействие данного метода уступает более простым операторам.

На рисунке 3 приводятся результаты сегментации цифрового изображения с помощью рассмотренных алгоритмов.

Рисунок 3 — Результаты сегментации изображения

Заключение

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

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

Список использованной литературы

1. Гонсалес Р., Вудс Р. Цифровая обработка изображений. — М.: Техносфера, 2006. — 1072 с.
2. Грузман И.С., Киричук В.С., Косых В.П., Перетягин Г.И., Спектор А.А. Цифровая обработка изображений в информационных системах: Учеб. пособие. — Новосибирск.: Изд-во НГТУ, 2003. — 352 с.
3. Сато Ю. Обработка сигналов. Первое знакомство. 2-е издание. — М.: Додэка XXI, 2009. — 176 с.
4. Оппенгейм А. Шафер Р. Цифровая обработка сигналов. 2-е издание. — М.: Техносфера, 2007. — 856 с.
5. Лайонс Ричард. Цифровая обработка сигналов: 2 изд. — М.: ООО Бином-Пресс, 2006. — 656 с.
6. Сергиенко А.Б. Цифровая обработка сигналов. — СПб.: Питер, 2007. — 752 с.
7. Фисенко В.Т., Фисенко Т.Ю., Компьютерная обработка и распознавание изображений: учеб. пособие. — СПб: СПбГУ ИТМО, 2008. — 192 с.
8. Яне Б. Цифровая обработка изображений. — М.: Техносфера, 2007. — 584 с.
9. Шапиро Л., Стокман Дж. Компьютерное зрение. — М.: БИНОМ. Лаборатория знаний, 2006. — 752 с.