Выделение контура

Рис.1 Маски фильтров выделения контуров, а) оператор двумерной дискретной производной второго порядка, б) однородно-периферийный оператор, в) оператор Лапласа.

Контур объекта цифрового изображения может быть выделен с помощью свертки изображения с некоторой маской (ядром, керном, матрицей, оператором, весовой функцией). В зависимости от вида маски и содержания изображения контур может иметь различный профиль (поперечное сечение). Часто используются квадратные маски различных размеров: 2х2, 3х3, 5х5 и др. На рис. 1 приведен пример масок размером 3х3. Здесь цветом выделены положительные (оттенки красного), отрицательные (оттенок синего) и нулевые (оттенок зеленого) значения весов ячеек маски. Сумма весов каждой маски равна нулю.

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

Покажем вариант получения первой маски (рис 1а). Обозначим символом vi,j значение элемента изображения из i-той строки в вертикальном направлении и j-того столбца в горизонтальном направлении изображения, тогда обратная конечная разность элементов в вертикальном направлении определяется выражением:

                                                                                     (1)

 

Прямая конечная разность элементов в вертикальном направлении:

                                                                                     (2)

 

Вторая конечная разность элементов в вертикальном направлении определяется подстановкой выражения (1) в выражение (2):

                                                                         (3)

 

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

                                                                                      (4)

 

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

                                                                                     (5)

 

Вторая конечная разность элементов в горизонтальном направлении определяется подстановкой выражения (4) в выражение (5):

                                                             (6)

 

Подстановкой выражения (3) в выражение (6) после приведения подобных членов и переноса начала отсчета в правый нижний угол получим выражение для второй конечной разности:

 

 

                                                (7)

 

которое соответствует маске, изображенной на рис. 1а. Заметим, что в выражении (1), при вычислении элемента с начальным значением индекса i возникает трудность, если неизвестно значение элемента с индексом i-1. Аналогично в выражении (2) для конечного значения индекса i требуется значение элемента с индексом i+1. Та же ситуация с расчетами по индексу j. Трудность преодолевается введением понятия о границе изображения и требования вести расчет для неграничных элементов. При этом значения граничных элементов считаются известными. Нумерацию строк и столбцов изображения будем начинать с его левого верхнего угла с цифры «1». В выражении (7) будем считать границей две верхние строки и два левых столбца, а расчет вести для элементов в интервалах номеров: 3 ≤ iM и 3 ≤ jN , где: M и N число строк и столбцов изображения соответственно.

Рис.2 Изображения: а) исходное – v, б) контурное масштабированное – E, в) искусственно контрастированное – E, г) псевдо-цветное контурное – E.

Произведем свертку тестового изображения v с маской рис. 1 а), описываемую выражением (7). На рис. 2 приведены изображения: а) тестовое – v, б) масштабированное контурное – Е, в) контрастированное контурное с обрезкой модуля значений пикселей больше 120 – E и масштабированное и г) контурное в псевдоцветах с красными положительными и синими отрицательными значениями контуров – E. Масштабирование в интервал 0 – 255 позволяет отобразить отрицательные значения контуров в виде их темных аналогов, а положительные в светлых. Можно видеть на рис. 2 б), что масштабированное изображение состоит из пикселей, яркость которых в основном близка к среднему серому значению, поэтому для наглядности на рис. 2 в) приведен его искусственно контрастированный (искаженный по яркости) аналог, а на рис. г) отрицательные значения контуров инвертированы в положительные и поэтому контура на этом рисунке в черно-белом варианте изображения двойные однотонные.

Отметим особенность формирования маски а) рис. 1, которая состоит в том, что конечные разности вида (1), (2), (4), (5) можно брать в любом порядке, что не меняет вида выражения (7).

Произведем свертку тестового изображения v с маской рис. 1 б), описываемую выражением:

                                                                  (8)

 

 

 

Рис.3 Изображения: а) исходное – v, б) контурное масштабированное – K, в) искусственно контрастированное – K, г) псевдо-цветное контурное – K.

На рис. 3 приведены изображения: а) тестовое – v, б) масштабированное контурное – K, в) контрастированное контурное с обрезкой модуля значений пикселей больше 120 – K и масштабированное и г) контурное в псевдоцветах с красными положительными и синими отрицательными значениями контуров – K. Все изображения на рис. 3 получены аналогично изображениям на рис.2, но с другой маской.

Маски рис.1 а) и б) иногда называют операторами Лапласа из-за их центральной симметрии, чего явно недостаточно для такого названия. Наоборот, маска на рис. 1 в) является дискретным аналогом оператора Лапласа:

                                                                                                             (9)

 

Это выражение является суммой коэффициентов матрицы (маски), полученной суммированием двух матриц:

,                                                                     (10)

 

где первое слагаемое соответствует выражению (3), а второе выражению (6).

 

Математическое выражение для маски рис. 1в) содержит всего 5 членов, поскольку угловые коэффициенты этой маски равны нулю и имеет вид:

,                         (11)

 

Равенство нулю правого нижнего элемента этой маски не позволяет в отличии от масок E и K принимать этот элемент за начало отсчета ее элементов. – i, j.  В качестве начала здесь выбран правый средний элемент, а расчет следует вести для элементов в интервалах номеров: 2 ≤ iM-1 и 3 ≤ jN, где: M и N число строк и столбцов изображения соответственно.

На рис. 4 приведены изображения: а) тестовое – v, б) масштабированное контурное – L, в) контрастированное контурное с обрезкой модуля значений пикселей больше 120 – L и масштабированное и г) контурное в псевдоцветах с красными положительными и синими отрицательными значениями контуров – L. Все изображения на рис. 4 получены аналогично изображениям на рис.2 и 3, но с другой маской и другой верхней границей.

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