Модель цепочки символов в задачах распознавания на основе структурных методов

Доклады БГУИР

2013 № 2

УДК 681.327.12.001.362

МОДЕЛЬ ЦЕПОЧКИ СИМВОЛОВ В ЗАДАЧАХ РАСПОЗНАВАНИЯ НА ОСНОВЕ СТРУКТУРНЫХ МЕТОДОВ

В.А. ПРЫТКОВ

Белорусский государственный университет информатики и радиоэлектроники П.Бровки, 6, Минск, 220013, Беларусь

Поступила в редакцию 23 ноября 2012

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

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

Введение

На сегодняшний день одним из наиболее динамично развивающихся направлений в распознавании образов и обработке изображений является текстурный анализ. Толчком к развитию направления сегментации и распознавания текстурных изображений послужили работы Харалика и Лавса [1, 2]. Тем не менее, хотя и ведутся активные работы по определению текстурных признаков, выявлению текстурирующего элемента, описанию текстур и т.д., до сих пор не существует четкого формального определения текстуры [3-6]. В случае текстурной сегментации используют, как правило, фильтры, статистические признаки, нейронные сети, скрытые марковские модели, фрактальный анализ и др.

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

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

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

однородности при выполнении сегментации и строить иерархические текстурные модели, однако обладает повышенной чувствительностью к ошибкам на этапах сегментации и кластеризации. Отметим, что при построении грамматики фактически используются кольцевые (циклические) строки. Это свойство позволяет использовать данный алгоритм и в генетике, при сравнении циклических ДНК [15]. Использование стохастических грамматик, детально описанных в [8], позволяет снизить влияние шумовых эффектов на результат.

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

Теоретический анализ

Формальная грамматика О определяется через множество терминальных символов (терминальный словарь) Т, множество нетерминальных символов (нетерминальный словарь) N множество правил Р вида а^Р, где а и в - цепочки символов, а, в е (ЫоТ)* и целевого символа грамматики 5". Аппарат формальных грамматик имеет хорошо проработанную математическую базу и для классов контекстно-свободных и регулярных грамматик позволяет достаточно тривиально решать задачу о принадлежности входной цепочки заданной грамматике. Таким образом, если описать текстуру с помощью регулярной либо контекстно-свободной грамматики, задачи распознавания и классификации изображений текстур переходят в разряд задач о принадлежности входной цепочки заданной грамматике.

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

Обозначим текстуру через нетерминал I, и поставим в соответствие каждому классу однородных областей текстуры свой нетерминал А7, где 7 - номер класса. Тогда текстура в первом приближении может быть описана следующим правилом: 1^А11 | А21 | ... | Ап1 | А1 | А2 | ... | Ап , где п - количество классов однородных областей. Однако этого правила недостаточно для описания отношения соседства. Построим соответствующие правила следующим образом: выполним обход границы каждой из областей, например, по часовой стрелке, и в порядке прохождения смежных областей впишем соответствующие им нетерминалы в правую часть правила: Ау^В1к1В2к2...Вткт , где т - количество смежных областей,у = 1, 2, ..., п, нетерминал Вк соответствует границе области к-класса, 7 - порядковый номер смежной области в последовательности, полученной при обходе границы, и, соответственно, к1, к2, ..., кш е {1, 2, ..., п}.

Учитывая, что в общем случае начало обхода может находиться в любой точке контура, последнее правило модифицируется следующим образом: Ау^В1к1В2к2...Вткт | В1к1В2к2...ВтктВ1к1 | В2к2...ВтктВ1к1 | В2к2.ВтктВ1к1В2к2 | ... | В^тВ'иВ^... | В^тВ'иВ^...Вткт . Подобное изменение позволяет учесть и шумовые эффекты вблизи граничных пикселей, а также построить инвариантное к повороту описание.

Для полноты описания в грамматику добавляются правила, позволяющие построить конечную цепочку терминальных символов: Вк^Ък | ВкЪк. Здесь Ьк - терминальный символ, соответствующий контурному пикселю, принадлежащему однородной области к-класса, к = 1, 2, ..., п.

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

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

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

Для обнаружения частичного совпадения правила грамматики требуют дополнения правилами вида Е | БкЕ, Е^Ь1 | Ь2 | ... | Ьп | е | X, где X - пустая цепочка. Такое дополнение позволяет учесть как возможные включения любых других классов областей в контур класса Бк, так и полное отсутствие соседних областей. Отметим, что такие правила грамматики фактически приводят к полному перебору возможных сочетаний нетерминалов в правой части правил и к значительному увеличению объема вычислений и замедлению обработки.

Использовать для этой цели известные меры неполного сходства строк [15, 16], например, меры Хэмминга или Левенштейна, не представляется возможным. Мера Хэмминга основана на подсчете количества позиций, в которых символы различаются. Ее можно использовать только для строк одинаковой длины, и любой шумовой эффект во входной цепочке значительно повлияет на результат: так, добавление лишнего символа в начале строки и одновременно пропадание символа в конце строки может привести к нулевому результату. Мера Левенштей-на (либо его модификация Дамерау-Левенштейна) рассчитывается как количество операций вставки, удаления и замены символов, необходимых для получения из одной строки второй. Вычислительная сложность этого алгоритма оценивается как О (тп). Меры п-грамм основаны на подсчете количества совпадающих подстрок фиксированной длины (п-грамм).

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

Методика

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

Пусть п - количество классов однородных областей,] = 1, 2, ..., п - порядковый номер класса, т - количество смежных областей у текущей однородной области, 7 = 1, 2, ..., т - порядковый номер смежной области в последовательности, нетерминал Б\ соответствует 7 смежной области к-класса. Если каждому нетерминалу правой части правила поставить в соответствие числовое значение, равное порядковому номеру определяемого им класса, то каждое подмножество правил грамматики вида Л}- ^ Б1к1Б2к2...Бткт | Б'иБ^.-.Б^тБ'и | Б2к2...БтктБ1к1 | Б2к2...БтктБ\1Б2к2 | ... | БтктБ1к1Б2к2... | БтктБ1к1Б2к2...Бткт можно описать кусочно-постоянной функцией

А, (X) = \

к, если 0 < х < х, к, если х < х < х,

А" >еСЛИ Хт-\ ~Х<Хт'

где х1, х2, ... , хт-1 - границы смежных областей, и хт - длина контура.

Для возможности сравнения цепочек нормализуем функцию по длине контура:

Л (X) Ч

к, если 0 < х <—,

1 ^Х)

к2, если — < х < —, хт Х„.

кт, если -т-1 < х < 1,

где х = [0, 1). Подобная нормализация делает модель инвариантной к масштабу. Определим функцию Е, двух цепочек А7 и Ау как

Г1, если А = А.,

,-,4) = ]' ' ',

10, если иначе.

1

Тогда в качестве меры соответствия можно использовать = | Е у (А (х), А (х)) ^х.

х=0

Такая модель не инвариантна к повороту. Инвариантности можно достичь, вычисляя меру соответствия с учетом сдвига А7 и Ау относительно друг друга. Будем рассматривать функцию Ау как периодическую:

х

к,если t < х < —^ +1

А (х) = \

1

к, если — +1 < х < — +1

t = 0, ± 1, ± 2,

к , если

+1 < х < t +1.

Пусть и - сдвиг цепочки Ау относительно А7 , и = [0, 1). Определим функцию соответ-

1

ствия М7,у цепочек следующим образом: М у(ы) = | Е j(.А(х), А(х + и)) ^х, тогда мера соот-

х=0

ветствия гi  = шах(М, . (и)).

В таком виде модель уже можно использовать, однако точность вычислений при этом зависит от шага дискретизации.

Из определения функции Е7,у следует, что она является кусочно-постоянной. Поскольку интеграл от постоянной величины является линейной функцией, то функция соответствия Му (и) будет являться кусочно-линейной функцией, при этом можно показать, что она непрерывна. Следовательно, функция соответствия М,у (и) достигает максимума в точках изменения угловых коэффициентов на концах соответствующих интервалов. Определим эти точки. Рассмотрим функции А1 и А2 , определенные следующим образом:

А =

к, если t < х < х +1, к2, если х +1 < х < х2 +1, А =' к, если х2 +1 < х < t +1,

к, если t < х < х3 +1, к2, если х3 +1 < х < х4 +1, к, если х4 +1 < х < t +1,

0 < х, х, х3, х4 < 1, 7 = 0, ±1, ±2, ..."

Допустим, что х1 < х2 < х3 < х4 и х2 - х1 < х4 - х3. Тогда функции имеют вид:

х

т

х

т

т

х

т-1

х

т

Рис. 1. Результат сравнения двух цепочек

Очевидно, что М^ (и) начнет возрастать в точке 1 - х4 + х1, достигнет максимума х2 - X] в точке 1 - х4 + XI, начнет убывать в точке 1 - х3 + XI и вновь станет равной 0 в точке 1 - х3 + х2. Рассмотренный пример касается случая, когда функции имеют по одному интервалу с одинаковым значением. Результаты легко обобщаются. При этом обратим внимание на тот факт, что существенными являются границы только тех пар интервалов, значения функций на которых совпадают.

Пусть X - множество точек разрыва функции А:

X (А) = (х

+1,

+ Л...,

+ *}, 1 = 0, ±1, ±2,

Тогда множество Цу точек изменения угловых коэффициентов функции М^ (и) опреде-

ляется следующим образом:

иг,3 = К,|х, - х., х, > х. ,| х, - х\ < 1, х, е Х(А ), х. е Х(А. ), А (хг) = А (х.) либо Аг (х,_ 1) = А. (х.) либо А (х{) = А. (х._1)}.

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

Полученная модель инвариантна к масштабу и повороту, и дает точное решение. Оценим ее вычислительную сложность. Алгоритм включает в себя вычисление множества V и, в соответствии с количеством элементов данного множества, расчета функции М и выбора максимального значения: /(т) = 2(т + п) + |и| к(т + п) + |и| .

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

х

т-1

х

х

X

т

т

т

Экспериментальная часть

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

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

содержать нетерминал 3, отсутствующий в правой части правил эталонной грамматики. Предложенная методика не учитывает соответствие нетерминала левой части правила, поэтому центральный элемент будет иметь меру соответствия, равную 1. Для диагональных элементов длина несовпадающего участка равна 1 пикселю, соответственно мера равна 1-1/4^(к+1). Для остальных элементов длина несовпадающего участка равна к, соответственно мера 1-£/4-(£+1).

A В С

H I D

G F E

Фрагмент эталона

A В С

H J D

G F E

к

, 1-1/401+1)

' l-k'4fli+l)

Фрагмент Результат

на входе с использованием грамматик

Рис. 2. Пример расчета меры соответствия

Результат с использованием методики

Результаты и их обсуждение

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

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

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

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

Заключение

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

MODEL OF CHARACTER STRING IN PATTERN RECOGNITION BASED ON STRUCTURAL METHODS

VA. PRYTKOV

Abstract

The proposed model of the character string allows to determine its degree of compliance of the formal grammar. The model can be used for pattern recognition and image processing based on syntactic techniques when the character string is not derived by the grammar.

Список литературы

1. HaralickR.M., Shanmugan K., Dinstein I. // IEEE Trans. Syst. Man. Cybern. 1973. Vol. 3. P. 610-621.

2. Laws K.L. Textured Image Segmentation. PhD thesis. Los Angeles, 1980.

3. Jain A.K., Karu K. // Lecture notes in computer science. 1995. Vol. 974. P. 3-10.

4. Noriega L., Westland S. // Proc. of 6th Intern. Conf. «Pattern Recognition and Information Processing». Minsk, 2001. P. 121-125.

5. Zhou F., Feng J., Shi Q. // Proc. of 6th Intern. Conf. «Pattern Recognition and Information Processing». Minsk, 2001. P. 41-45

6. Абламейко С.В., Лагуновский Д.М. Обработка изображений: технология, методы, применение. Минск, 2000.

7. Старовойтов В.В. Локальные геометрические методы цифровой обработки и анализа изображений. Минск, 1997.

8. Фу К. Структурные методы в распознавании образов. М., 1977

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

10. Форсайт Д., Понс Ж. Компьютерное зрение. Современный подход. М., 2004.

11. Сулейменов Е.Р. // Докл. 9 Всеросс. конф. М., 1999. С. 230-231

12. Прытков В.А. // Доклады БГУИР. 2008. № 4. С. 115-120.

13. YarmolikA.P., Bartashevich Y.A., Prytkov V.A. // Proc. of the 10th Intern. Conf. «Pattern Recognition and Information Processing». Minsk, 2009. Р. 112-114

14. Прытков В.А., Барташевич Ю.А., Лукашевич М.М. // Матер. V междунар. конф.-форума «Информационные системы и технологии». Минск, 2009. С. 172-175

15. Гасфилд Д. Строки, деревья и последовательности в алгоритмах. СПб, 2003.

16. Gonzalo Navarro // ACM Computing Surveys. 2001. Vol. 33, № 1. P. 31-88.