Научная статья на тему 'СРАВНИТЕЛЬНЫЙ АНАЛИЗ ГРАДИЕНТНЫХ МЕТОДОВ ВЫДЕЛЕНИЯ КОНТУРА ОБЪЕКТА НА ИЗОБРАЖЕНИИ'

СРАВНИТЕЛЬНЫЙ АНАЛИЗ ГРАДИЕНТНЫХ МЕТОДОВ ВЫДЕЛЕНИЯ КОНТУРА ОБЪЕКТА НА ИЗОБРАЖЕНИИ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
489
57
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГРАДИЕНТ / КОНЕЧНАЯ РАЗНОСТЬ / СВЕРТКА ИСХОДНОГО ИЗОБРАЖЕНИЯ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Пахомова О.А., Кравец О.Я.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

COMPARATIVE ANALYSIS OF GRADIENT DISTRIBUTION METHODS FOR ALLOCATION OF THE OBJECT CONTOUR ONTHE IMAGE

Basic definitions of basic concepts in the theory of selection of object boundaries, such as detection, gradient, contour point and brightness are given in the paper. The way of converting an image from RGB to a grayscale format is introduced. The mathematical model of formation and the method of calculating the gradient, as well as its role in object identification, are considered. The ways of discretization of the gradient for each pixel of the image are shown, based on the concept of finite difference and on the convolution of the original image with the mask of operators Sobel, Roberts, Pruitt and Scharra. The results of a computational experiment on the application of masks by the operators Sobel, Roberts, Pruitt and Scharr are presented for calculating the values of the gradients and their directions to a specific image. The method of finite differences consists in replacing the domain of continuous variation of the argument by a finite set of points. Convolution can be called an operation that redefines the value of the pixel under consideration taking into account its environment. A mask is a definite matrix - the core of the convolution, which is predetermined in view of the use of this or that boundary detection operator. In this article, a comparative analysis was carried out and the best methods were selected based on the visual perception of the resulting contours in the image and the calculated gradients

Текст научной работы на тему «СРАВНИТЕЛЬНЫЙ АНАЛИЗ ГРАДИЕНТНЫХ МЕТОДОВ ВЫДЕЛЕНИЯ КОНТУРА ОБЪЕКТА НА ИЗОБРАЖЕНИИ»

УДК 004.021

СРАВНИТЕЛЬНЫЙ АНАЛИЗ ГРАДИЕНТНЫХ МЕТОДОВ ВЫДЕЛЕНИЯ КОНТУРА

ОБЪЕКТА НА ИЗОБРАЖЕНИИ

© 2018 О.А. Пахомова, О.Я. Кравец Воронежский государственный технический университет, г. Воронеж, Россия

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

Ключевые слова: градиент, конечная разность, свертка исходного изображения

Введение

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

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

Граница - это линия, отделяющая объект на изображении от фона или других объектов.

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

Яркость (интенсивность) - это количественно измеряемая физическая характеристика цвета.

Модель формирования градиента интенсивности

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

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

Формула для осуществления такого преобразования, использующая значения каждого из каналов R,G и B [1]:

Ay =[0,2989*R1J + 0,5870*Gij + 0,1140*B1J J (1)

Пусть z = f (x, y) дискретная функция распределения яркости изображения А. Причем X - это столбцы, а Y - строки в матрице изображения. Необходимо найти направление наибольшего увеличения яркости и величину её изменения в этом направлении. Иными словами, узнать на сколько «резко» или на сколько «плавно» изменяется яркость в каждой точке, а значит, определить, находится ли точка на грани.

Таким образом, далее речь пойдет о производной функции яркости f (x, y), которая является характеристикой скорости ее изменения в каждой точке [2].

Если M 0 (x0, У0) некоторая точка области определения рассматриваемой функции, тогда вектор r показывает направление возрастания функции. Вектор r задается углом между ним и одной из осей ОХ или ОУ.

/ Si7 i

г i

Гу У Я

i а - 4 - -

О 1 ч

] х

Рис. 1. Вектор возрастания функции, проходящий

через точку

мп

Af

Предел отношения — при

Аг

Аг ^ 0 называется производной f (х, у) в точке

г А

М о по направлению г, т.е. lim —

Аг ^ 0 Аг

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

f (х, У) (2).

Af = lf f I,

Sx dy J

(2)

ж т

где — и — - частные производные первого

дх дх

порядка.

Формула для нахождения градиента функции f (х, у) в точке М о :

f

dr

+ cos ,

af

i • (3)

> M 0 x J M 0 \»yj M 0

где cos a, cos p - направляющие косинусы вектора r (rx, ry), которые вычисляются по формулам (4) - (5):

cosa =-

cos^ = . r

(4)

(5)

Значения модуля вектора r вычисляются по следующей формуле:

2 2

|r| = \rx + Гу

(6)

Таким образом, гх и гу - составляющие

градиента по осям ОХ и ОУ.

На практике для нахождения направления вектора градиента, назовем его у, используют тангенс угла наклона вектора г и оси ОХ,

tg(т) =~ • Тогда направление вектора можно

найти по формуле (7).

У

у = arctg (—) (7)

Конечно-разностная аппроксимация градиента

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

Конечной разностью 1-го порядка называют разность между двумя соседними значениями функции / в узлах интерполяции (8)

^ = ч+1 - ч ~ У+1)-У(хч), (8)

где k = 0, n -1

Конечной разностью 2-го порядка называют разность между двумя соседними конечными разностями 1-го порядка (9).

д2zk = Azk+1 -Azk - f(xk+2)-2* f(xk+1)+ f(xk ), где k = 0, n - 2 (9)

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

rx =f - f (x +1, y)-f (x, y) , (10)

ox

ry = f - f (x,y +1)- f (x,y) . (11)

^ oy

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

of

rx =|f - f (i + 2, j)-2*f(i +1, j)+f (i, j), (12)

ox

Of

ry = — - f(i, j + 2)-2* f(i, j +1)+f(i, j). (13)

oy

x

r

x

cos

r

r

Анализ градиентных методов, основанных на свертке изображения

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

Пример такой маски размером 3х3: /00 /10 /20 Н = /01 /11 /21 (14)

/02 /12 /22

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

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

соответствующие значения яркости пикселей

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

А / .

Пример вычисления

изображения на рис. 2.

градиента

Рис. 2. Вычисление градиента изображения

Если взять фрагмент изображения 3x3 с координатами в центре пикселя х и у, то составляющие градиента с использованием маски вычисляются с помощью формул (15) -(16):

1 1

гх = 2 2 аХ+¡,у+] *НХ1+1 /+1 (15) г =-1 /=-1

11

Гу =2 2 АХ+г,у+/ * Нл +1,/+1 (16) г=-1/=-1

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

Оператор Робертса

Один из наиболее ранних алгоритмов по обнаружению контуров изображения принадлежит Лоуренсу Робертсу [2].

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

р - /(,/)-/( +1,/+1) (17)

Ох

Р - /(г +1, /)-/(г, / +1) . (18)

Частичные производные, приведенные выше, могут быть реализованы путем аппроксимации их до двух масок 2x2.

Н х =

-1 0 0 1

0 -1

Ну = у 1 0

(19)

(20)

Оператор Прюитта

Данный механизм назван в честь Джуди Прюитт [4]. Основная идея метода основана на понятии центральной разностной производной (21) - (22):

р -(/(г +1,/)-/(г -1,/))/2 (21)

ох

О"

Р-(/(г, / +1)-/(г, /-1))/2 . (22)

Данный механизм более помехоустойчив, чем оператор Робертса.

Рассмотрим расположение пикселей вокруг центрального / / как показано ниже:

/0 /1 /2

/7 // /3 (23)

/6 /5 /4 Частные производные вычисляются как: гх = (/2 + с * /3 + /4)- (/0 + с * /7 + /6) (24) Гу =(/6 + с * /5 + /4 )-(/0 + с * /1 + /2 ) (25) Константа С в приведенных выражениях означает, что акцент делается на пикселях, расположенных ближе к центру маски гх и Гу .

маска оператора

Установив С = 1, Прюитта получается как:

-1 0 +1 Н х = -1 0 +1 (26)

-1 0 +1 -1 -1 -1 Ну = 0 0 0 , (27)

+1 +1 +1

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

Оператор Собеля

Данный механизм также опирается на центральную разностную производную, однако при усреднении дает больший вес центральным пикселям [5]. Установив С = 2, частные производные вычисляются как:

Гх = (/2 + 2* /3 + /4 )-(/0 + 2* /7 + /6 ) (28) Гу = (/6 + 2* /5 + /4)- (/0 + 2* /1 + /2) (29)

Маска оператора Собеля получается как:

(30)

-1 0 +1

Нх = -2 0 +2

-1 0 +1

-1 -2 -1

Ну = 0 0 0

+1 +2 +1

(31)

Оператор Щарра

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

увеличиваются в 3 раза, а центральных в 10 [6].

Гх =(3* /2 + 10* /3 + 3* /4 )

- (3* /0 + 10* /7 + 3* /6 )

Гу =(3* /6 + 10* /5 + /4 )

- (3* /0 + 10* /1 + 3* /2 ) Маска оператора Щарра получается как

-3 0 +3 Нх =-10 0 +10 (34)

-10 0 +10 -3 -10 -3

(35)

(32)

(33)

Численный эксперимент

Пусть дано изображение А (рис. 4). Требуется рассчитать значения градиентов и его направления.

Рассмотрим вычисление градиента пикселя, выделенного на рис. 3.

Рис. 3. Подматрица яркостей изображения А Сравнение значения и направления градиента

Метод Значение градиента Направление градиента

радианы градусы

Кон. разности 1-го порядка =2,24 =-2,68 =-153 или 207

Кон. разности 2-го порядка =4,12 =2,90 =166

Оператор Робертса =21,38 =1,76 =101

Оператор Прюитта 48,00 =3,14 180

Оператор Собеля =45,01 =-3,12 =-179 или 181

Оператор Щарра =123,20 =-3,08 =-177 или 183

а) оригинал

Ь) метод конечных разностей 1-го порядка

Рис. 4. Двумерная карта градиента для каждой точки изображения

Ну = 0

00

+ 3 +10 + 3

с) метод конечных разностей 2-го порядка

с1) оператор Робертса

е) оператор Прюитта

1) оператор Собеля

g) оператор Щарра

Рис. 4. Двумерная карта градиента для каждой точки изображения (продолжение)

Исходя из результатов, можно сделать следующие выводы:

- Операторы Собеля и Прюитта дают лучшие результаты. Значения и направления градиентов схожи.

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

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

- Оператор Щарра выделяет излишнее число границ. Завышенное значение градиента по сравнению свыше рассмотренными операторами. Угол направления близок к операторам Прюитта и Собеля.

Заключение

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

В дальнейшем с развитием области обработки изображения появляется

перекрестный оператор Робертса, основанный на понятии диагональных разностей.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

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

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

Литература

1. Меженин А.В. Методы и средства распознавания образов и визуализации. СПб., 2012. 129 с.

2. Гонсалес Р., Вудс Р. Цифровая обработка изображений. М.: Техносфера, 2006. 1072 с.

3. Соловейчик Ю.Г., Рояк М.Э., Персова М.Г. Метод конечных элементов для скалярных и векторных задач. Новосибирск: НГТУ, 2007. 896 с.

4. Prewitt J.M.S. Object enhancement and extraction // Picture Processing and Psychopictorics, B. Lipkin and A. Rosenfeld, Eds., New York: Academic Press, 1970.

5. Sobel I., Feldman G. A 3x3 Isotropic Gradient Operator for Image Processing // Pattern Classification

and Scene Analysis, R. Duda and P. Hart, Eds., pp. 271-272, John Wiley & Sons, 1968

6. Scharr H. Optimal Operators in Digital Image Processing, U. Heidelberg, 2000. -http://www.worldcat.org/title/optimal-operators-in-digital-image-processing/oclc/76215200.

Поступила 17.11.2017; принята к публикации 22.01.2018 Информация об авторах

Пахомова Олеся Анатольевна - аспирант, Воронежский государственный технический университет (394026, Россия, г. Воронеж, Московский проспект, 14), e-mail: olesja555@list.ru

Кравец Олег Яковлевич - д-р техн. наук, профессор, Воронежский государственный технический университет (394026, Россия, г. Воронеж, Московский проспект, 14), e-mail: csit@bk.ru

COMPARATIVE ANALYSIS OF GRADIENT DISTRIBUTION METHODS FOR ALLOCATION

OF THE OBJECT CONTOUR ONTHE IMAGE

O.A. Pakhomova, O.Ya. Kravets Voronezh State Technical University, Voronezh, Russia

Abstract: basic definitions of basic concepts in the theory of selection of object boundaries, such as detection, gradient, contour point and brightness are given in the paper. The way of converting an image from RGB to a grayscale format is introduced. The mathematical model of formation and the method of calculating the gradient, as well as its role in object identification, are considered. The ways of discretization of the gradient for each pixel of the image are shown, based on the concept of finite difference and on the convolution of the original image with the mask of operators Sobel, Roberts, Pruitt and Scharra. The results of a computational experiment on the application of masks by the operators Sobel, Roberts, Pruitt and Scharr are presented for calculating the values of the gradients and their directions to a specific image. The method of finite differences consists in replacing the domain of continuous variation of the argument by a finite set of points. Convolution can be called an operation that redefines the value of the pixel under consideration taking into account its environment. A mask is a definite matrix - the core of the convolution, which is predetermined in view of the use of this or that boundary detection operator. In this article, a comparative analysis was carried out and the best methods were selected based on the visual perception of the resulting contours in the image and the calculated gradients

Key words: a gradient, finite differences, the convolution of original image

References

1. Mezhenin A.V. "Methods and means of pattern recognition and visualization ("Metody i sredstva raspoznavaniya obrazov i vizualizatsii"), St. Petersburg, 2012, 129 p.

2. Gonzalez R., Woods R. "Digital imaging" ("Tsifrovaya obrabotka izobrazheniy"), Moscow, Tekhnosfera, 2006, p. 1072

3. Soloveichik Yu.G., Royak M., Persova M.G. "Finite element method for scalar and vector problems" ("Metod konechnykh elementov dlya skalyarnykh i vektornykh zadach"), Novosibirsk, NSTU, 2007, 896 p.

4. Prewitt J.M.S., Lipkin B., Rosenfeld A. "Object enhancement and extraction", Picture Processing and Psychopictorics", Eds., New York: Academic Press, 1970.

5. Sobel I., Feldman G. A, Duda R., Hart P., "3x3 Isotropic Gradient Operator for Image Processing, Pattern Classification and Scene Analysis", Eds. , John Wiley & Sons, 1968, pp. 271-272

6. Scharr H., Heidelberg U. "Optimal Operators in Digital Image Processing", 2000, http://www.worldcat.org/title/optimal-operators-in-digital-image-processing/oclc/76215200.

Submitted 17.11.2017; revised 22.01.2018 Information about authors

Olesya A. Pakhomova, Postgraduate student, Voronezh State Technical University (14 Moskovsky prospect, Voronezh, 394026, Russia), e-mail:olesja555@list.ru

Oleg Ya. Kravets, Dr.Sc. (Technical), Professor, Voronezh State Technical University (14 Moskovsky prospect, Voronezh, 394026, Russia), e-mail:csit@bk.ru

i Надоели баннеры? Вы всегда можете отключить рекламу.