Эффективный алгоритм предобработки изображений для структурных методов распознавания рукописных
символов
Поцепаев Р.В. (roman575@mail.ru ), Петров И.Б.
Московский Физико-Технический Институт
1. Введение
Задача распознавания рукописных символов есть задача нахождения соответствия между изображением рукописного символа и его кодом. Существуют две различные постановки задачи распознавания символов, различие которых связано со способом получения изображения. Изображение символа может быть получено при сканировании документа, содержащего рукописный текст. В этом случае входными данными для задачи распознавания являются матрицы точек, соответствующие изображениям букв, и возникает задача «оффлайн1» распознавания [1]. Другой способ получения изображения -это использование специальных устройств, таких, как графический планшет. При этом изображение записывается в память компьютера в процессе написания символов; входными данными для задачи являются траектории движения пера, представляющие собой последовательности координат пера. Такая задача называется задачей «онлайн» распознавания [2].
Среди существующих методов решения «оффлайн» задачи, важное место занимает метод, основанный на восстановлении траектории написания символа по его бинарному изображению. В последнее время этому подходу посвящено большое количество публикаций [3-6]. Данный подход можно рассматривать как попытку сведения задачи «оффлайн» распознавания к «онлайн» задаче с последующим применением существующих методов «онлайн» распознавания. Обычно траектория символа имеет разрывы, соответствующие отрыву пера от бумаги. В дальнейшем будем говорить, что символу соответствует набор траекторий движения пера. Начальная и конечная точки каждой траектории - это точки касания и отрыва пера от бумаги. Хотя в «оффлайн» задаче распознавания в большинстве случаев удается восстановить каждую из траекторий символа, все же невозможно точно определить последовательность возникновения траекторий на изображении, а также для каждой траектории отличить начальную точку от конечной. Поэтому применяемый метод «онлайн» распознавания не должен зависеть от порядка и направления траекторий. Такие методы существуют и успешно применяются. Преимуществом рассматриваемого подхода к решению «оффлайн» задачи является высокая точность распознавания и малое число эталонов - качества, соответствующие «онлайн» методам, инвариантным к порядку и направлению траекторий.
Существующие методы восстановления траектории пишущего инструмента в качестве входной информации используют либо скелет изображения [4-6], либо контур изображения [3]. Несмотря на большую эффективность использования «скелетизации» в других методах распознавания [7,8], восстановление траектории по скелету изображения имеет существенный недостаток: критически важной информацией при восстановлении траектории является форма граничного конура в окрестности областей пересечения штрихов. Из скелета изображения эта информация недоступна (см. рис. 1). К недостаткам
1 Термины «оффлайн» и «онлайн» распознавание заимствованы из англоязычной литературы, которые в оригинале звучат как off-line handwritten recognition и on-line handwritten recognition
«скелетизации» можно отнести также большую чувствительность к шуму на границе изображения и, как следствие, возникновение случайных «отростков» в скелете изображения. Поэтому методы восстановления траектории, основанные на получении скелета, приводят к ошибкам при обработке изображений с достаточно сложной траекторией.
Альтернативой «скелетизации» является метод предобработки, который состоит в следующем: изображение символа разбивается на полосы черных точек, соответствующие непересекающимся отрезкам штрихов (регулярные области) и области пересечения штрихов (узловые области).
Искажение области пересечения траекторий
е траектории по форме границ в окрестности узловой
Рис. 1. Изображение символа и его скелет
Существующие алгоритмы выделения регулярных областей основываются на точечной обработке изображений [3,9]. В данной работе предлагается алгоритм, построенный только на использовании ломаной, аппроксимирующей контур изображения.
Основными особенностями предлагаемого метода являются:
• высокая скорость обработки изображений, которая достигается за счет отсутствия точечной обработки;
• отсеивание изображений, для которых метод выделения траекторий неприемлем (изображения с пятнами и заплывами) уже на этапе предобработки.
Статья организована следующим образом: во втором параграфе мы предлагаем математическую модель изображения рукописного символа и формулируем задачу предобработки, в параграфе 3 мы рассматриваем метод восстановления прямолинейных отрезков траектории, четвертый параграф посвящен критерию для выявления изображений, в которых восстановить траекторию невозможно. В пятом параграфе приведен основной алгоритм предобработки изображений. Параграф 6 содержит экспериментальные результаты и, в завершении, параграф 7 подводит итог в данной работе.
2. Модель изображения символа и постановка задачи
Как уже было сказано, рукописному символу соответствует набор траекторий движения пера 7i,... Tn. Каждую траекторию T представим в параметрическом виде {x=x\t), y=y\t), tе [0,1]}. Будем считать, что область соприкосновения пишущего инструмента с бумагой представляет собой круг с некоторым радиусом, зависящим от давления пера на бумагу: {r=r\t), t е [0,1]}, причем скорость изменения радиуса вдоль траектории ограничена, т.е. |dr /dl| < const, где l(t) - длина траектории.
Штрихом траектории Т назовем область черных точек
И = |(х, у)^ е [0,1] (х - хг (I))2 + (у - У (О)2 < (г' ())2} . (1)
Область всех черных точек О на изображении представляет собой в точности объединение множества штрихов всех траекторий, т.е. О = И1 ^...^Ип. В описанных терминах, общая задача восстановления траектории движения пера формулируется следующим образом: по известному изображению символа О необходимо восстановить множество траекторий {71,... Тп}.
Под огибающей семейства окружностей {(х - х' (¿))2 + (у - у' (¿))2 = (г' (¿))2, t е[0,1]} понимается кривая, которая в каждой своей точке касается некоторой окружности из заданного семейства (см. рис. 2). В случае если штрихи перекрываются, а также, если кривизна штриха больше некоторого значения (для штрихов с постоянным радиусом г это значение равно р(1) = 1/г , см. рис. 3), отрезки огибающей оказываются внутри области О, т.е. не принадлежат границе.
Под регулярной областью будем понимать отрезок штриха {(х, у) | Зt е[а, Ь], 0 < а < Ь < 1, (х - х' (О)2 + (у - у1 (О)2 < (г' (О)2}, для которого пара принадлежащих ему отрезков огибающей принадлежит дО, другими словами, обе границы которого видны на изображении.
Задача предобработки, рассматриваемая в данной работе, состоит в поиске всех регулярных областей на изображении. Каждой точке границы регулярной области ставится в соответствие точка на противоположной границе.
Рис. 2. Две огибающие семейства окружностей Рис. 3. Часть огибающей В1В2ВЗВ4
не принадлежит границе
Предлагаемый в данной работе метод основывается на представлении граничных контуров изображения в виде замкнутых ломаных, полученных путем аппроксимации. Среди существующих методов построения аппроксимирующих ломанных выбран алгоритм, предложенный Уолом и Даниелссоном [10]. Этот алгоритм имеет линейную по количеству точек временную сложность. В дальнейшем, бинарное изображение не используется, и все вычисления основываются только на использовании аппроксимирующих ломаных.
В точечных методах вычисления производятся для всех точек границы, в предлагаемом методе - только для отрезков полученных граничных ломаных, что существенно повышает скорость обработки изображений.
3. Выделение прямолинейных участков траектории
Будем говорить, что отрезки ^ и ^ принадлежащие одному или различным граничным контурам, находятся в отношении Я, если возможно построить равностороннюю
трапецию, со сторонами на отрезках ^ и t, удовлетворяющую следующим условиям (см. рис. 4):
1. Основания трапеции й1, й2 соединяющие точки отрезков ^ и t полностью лежат внутри области черных точек;
2. Углы а, в у оснований трапеции отличаются от прямого угла не более чем на заданную величину атзх;
3. Значения
sinа sin в
не превосходят заданной величины йт
а)
б)
V 1
V а \ а
Рис. 4. Трапеция, построенная на отрезках .V и I. Стрелками показано направление обхода контура, при котором область черных точек находится справа
Рис. 5. а, б) удаление трапеций, в) уменьшение высоты трапеций
Область, ограниченная трапецией обладает всеми свойствами прямолинейного отрезка штриха с равномерно изменяющимся радиусом пера: линия, соединяющая середины оснований есть отрезок траектории, стороны трапеции - огибающие семейства окружностей. Условие 1 означают то, что отрезок штриха является областью черных точек (хотя допустимы белые пятна внутри штриха), условие 2 ограничивает скорость изменения диаметра пишущего инструмента, условие 3 определяет максимально возможный диаметр йтзх пишущего инструмента.
Первым этапом работы алгоритма является поиск всех пар отрезков, принадлежащих контурам, которые находятся в отношении Я (очевидно, что Я симметрично). Для каждой пары ^ е Я находится трапеция, с максимально возможной высотой, для которой выполнены рассмотренные условия.
Отметим некоторые особенности практической реализации построения трапеции на произвольных отрезках контуров ^ и I Вначале определяется максимально возможная трапеция с учетом только второго условия. Когда трапецию удается построить, если необходимо, она уменьшается до размеров, при которых выполняется третье условие. Рассмотрим одно из оснований трапеции 0102 и отрезки на контурах Р101, 01Ы1, Р202, 02Ы2, причем область черных точек находится справа при проходе по этим отрезкам в направлении второй точки (см. рис. 6). Напомним, что если векторное произведение а х Ь положительно,
Рис. 6.
то кратчайший поворот вектора Ь совмещающий его направление с направлением вектора а происходит по часовой стрелке.
Первое условие принадлежности основания O1O2 к области черных точек равносильно следующему ряду условий, которые легко реализуемы в алгоритме: O1O2 х P1O1 > 0;
O1O2 х O1N1 > 0; O2O1 х P2O2 > 0; O2O1 х O2N2 > 0; отрезок O1O2 не пересекается ни с одним из отрезков контуров, кроме ^ и t.
Проверка последнего условия также основана на свойствах векторного произведения, поэтому общий метод построения трапеций имеет высокую вычислительную эффективность.
Параметры атзх, dmax определяются экспериментально, главным критерием выбора
тех или иных значений для атзх, dmax является минимизация количества трапеций, не
являющихся отрезками действительных штрихов. Для этого определяется максимальный диаметр пишущего инструмента и скорости его изменения на экспериментальной базе изображений.
Каждой трапеции поставим в соответствие меру валидности
п
m = ^
^^ - ^ - d 2
- Ь
а-2
+с•h , (2)
где dср - средняя толщина штриха, вычисленная по всем символам; a, Ь, с -коэффициенты, определяемые экспериментально. Очевидно, что чем больше трапеция похожа на прямолинейный отрезок штриха с постоянным диаметром равным dср, тем больше ее мера валидности m. Если две трапеции имеют общую область не нулевой площади, то трапеция с меньшей мерой валидности либо удаляется, либо уменьшается до размера, при котором трапеции не имеют общей области (см. рис. 5). Если внутри трапеции находится замкнутый контур, т. е. область белых точек, что не противоречит условиям 1-3, то в зависимости от меры валидности, либо контур удаляется, как случайный, либо удаляется трапеция, содержащая внутренний контур.
После построения и фильтрации трапеций, изображение разбивается на трапеции и смежные с ними, так называемые, узловые области. Каждая трапеция соприкасается с двумя узловыми областями, причем основания являются границами между трапецией и каждой из двух областей. Кратностью узловой области назовем количество соприкасающихся с ней трапеций. Обозначим значение кратности буквой K и рассмотрим области с различными значениями кратности (см. рис. 7):
• K = 0: в области не удалось выделить ни одной трапеции и в дальнейшем область рассматривается нераспознаваемое «пятно»;
• K = 1: область является концом штриха если она удовлетворяет критерию регулярности (см. далее критерий регулярности узловых областей);
• K = 2: область является отрезком траектории между двумя трапециями если она удовлетворяет критерию регулярности (см. далее критерий регулярности);
• K > 2: найдена область пересечения штрихов.
Рис. 7. Числами обозначена кратность областей: а) пятно; б) концевая область; в) области для соединения; г) узел кратности 3; д) узел кратности 4
4. Критерий регулярности узловых областей
В большинстве случаев узловая область кратности 2, как и соседние с ней трапеции, представляет собой отрезок штриха (разница лишь в том, что трапеции образованы прямолинейными отрезками траектории, а узловая область кратности 2 - криволинейным отрезком). Это предположение выполняется в большинстве случаев, но не всегда. Для изображений, в которых толщина штриха сравнима с размерами символа, несоответствие наблюдается особенно часто (см. рис. 9а-9в), кроме того пятна на изображении могут также классифицироваться как узловые области (рис. 9б). Рассмотрим эвристический критерий для определения, является ли область кратности 2 отрезком одного штриха либо представляет собой нечто иное.
Разобьем стороны узловой области на равные отрезки длиной АИ = ^™х и соединим концы
2
отрезков, которые делят стороны приблизительно в равных отношениях как показано на рисунке 8. Каждый из построенных отрезков, соединяющий противоположные стороны, рассматривается как диаметр окружности пера с центром в середине отрезка. Ломаная, соединяющие середины отрезков рассматривается как возможная траектория внутри
узловой области.
Критерию регулярности удовлетворяют только те узловые области, для которых имеет место следующее: для всех построенных отрезков I г = 1..п выполнены неравенства
Рис. 8.
I < dm
I -1
2АИ
< 1§атах , что соответствует ограничениям на диаметр пера и скорость его
изменения.
б) в)
Рис. 9. Изображения, содержащие области, для которых критерий регулярности не выполняется
г)
Область кратности 1 также может не оказаться концом штриха (см. рис. 9г). Исходя из предположения о том, что область соприкосновение пишущего инструмента с бумагой представляет собой круг, будем считать, что область, идеально соответствующая концу штриха должна иметь форму полукруга с диаметром пера. Отсюда следует простой и эффективный критерий регулярности для K = 1: отношение периметра узловой области к
P
периметру полукруга не превышает пороговой величины, т.е. ---< const, где P -
п-d/2 + d
периметр узловой области, d - длина основания прилегающей трапеции, по которому узловая область соприкасается с трапецией.
Для областей, кратность которых больше двух (области пересечения штрихов), также может быть построен критерий регулярности, однако он должен быть основан на анализе штрихов в узловой области, который выходит за рамки этапа предобработки. Будем считать, что все узловые области при К > 2 удовлетворяют критерию регулярности.
Если на изображении существуют узловые области кратности 0 или узловые области, для которых не выполняется критерий регулярности, то изображения либо попадает в «отказ» как изображение с пятнами или заплывами либо для его распознавания должны быть применены другие методы, основанные на непосредственном построении признаков по бинарной матрице или контуру изображения (см. например [11]).
5. Основной алгоритм построения регулярных областей
Регулярной областью назовем область, полученную объединением последовательности чередующихся и соприкасающихся трапеций и узловых областей кратности 2, начинающуюся и заканчивающуюся трапециями. При этом все узловые области удовлетворяют критерию регулярности, а кратность узловых областей, граничных с
регулярной областью не равна двум (см. рис. 10).
Алгоритм построения
регулярных областей удобно описать в терминах теории графов. Рассмотрим
неориентированный граф
0=<У, Е> в котором множеству вершин соответствует
множество всех узловых областей, а множеству ребер - множество всех трапеций. Ребро е = <у, ~м> существует, т.е. е е Е, если существует трапеция, соприкасающаяся с узловыми областями V, w. На множестве вершин определим предикат Р(у) принимающий значение «истина» только если узловая область, соответствующая вершине V имеет кратность 2 и удовлетворяет критерию регулярности. Согласно определению регулярной области, задача поиска всех регулярных областей сводится к поиску всех последовательностей
К Ф 2
Рис. 10. Построение регулярной области
< ег, v1, ег , v1 ,
Ч ' Л ' Ч2 ' ¡27
е, =< V,. ,
, е^ 1, 1, е^ >, для которых выполнено следующее условие:
> , Р^, ) = 1 для всех к е 2..Ы -1;
е =< -щ, V. >, РЫ) = 0;
^ =< VNУ > , Р(У) =
Заметим, что при N = 1 регулярная область состоит только из одной трапеции.
(3)
Рис. 11. Выделение трапеций, фильтрация трапеций, выделение регулярных областей, построение траекторий
V
Далее приведен довольно простой алгоритм построения рассматриваемых последовательностей:
Входные данные: G=<V, E>, V=(v1,...,vn}, E={e1,...,em};
Результат: List = (R1.Rk}, где Ri= < e ,v.,e ,v. ,...,e ,v. ,e > ;
У ^ ' h' Л' .2' ' 'N-1' .N-1' 'n '
Шаг 1. Q' ^ 0, i=1...m;
Шаг 2. Найти ребро e=<w, v>, i=1...m для которого Q' = 0,
Шаг 3. Если ребро e, не найдено - конец работы алгоритма, иначе, создать регулярную область R=<e>; Q, ^ 1;
Шаг 4. Если P(v) = 1 и Q. = 0 где e. =<v, y>, y Ф w, то R ^ <R, v, e. >; Q. ^ 1; i ^ <w, v> ^ <v, y>; перейти к шагу 4;
Шаг 5. Если P(w) = 1 и Q. = 0 где e. =<y, w>, y Ф v, то R ^ < e., w, R >; Q. ^ 1; i ^ <w, v> ^ <y, w>; перейти к шагу 5;
Шаг 6. Добавить R в List;
Шаг 7. Перейти к шагу 2.
В алгоритме используется вспомогательный массив Q1,. Qm; Qi = 1 если ребро ei уже задействовано в построении какой либо регулярной области. Выбирается произвольное неиспользованное ребро (Шаг 2) на основе которого строится регулярная область в виде последовательности состоящей из одного ребра (Шаг 3). Затем в конец последовательности добавляются ребра и вершины, сохраняющие условие (3) для последовательности (Шаг 4). Аналогично ребра и вершины добавляются в начало последовательности (Шаг 5). На шаге 6 готовая последовательность заносится в список найденных областей и начинается поиск следующей регулярной области (Шаг 7).
Независимо от нумерации вершин и ребер и от существования узловых областей, не удовлетворяющих критерию регулярности, алгоритм строит одно и то же множество непересекающихся регулярных областей. Единственным исключение является область черных точек, в форме кольца, в которой все узловые области имеют кратность равную двум. В этом случае первая выбранная трапеция всегда будет начальной в последовательности, соответствующей единственной регулярной области.
На рисунке 11 приведен полный цикл предобработки. Не сложно построить траекторию каждой регулярная области - она состоит из средних линий внутренних трапеций соединенных как показано на рисунке 8. При построении траектории используется информация, полученная на этапе проверки критерия регулярности внутренних узловых областей. В дальнейшем, при необходимости, траектории регулярных областей сглаживаются.
6. Экспериментальные результаты
Для исследований использовалась база, состоящая из 1040 изображений рукописных символов - 40 изображений каждой буквы английского алфавита (20 заглавных и 20 строчных букв). Использовались изображения символов, полученные на различных сканирующих устройствах и написанные разными авторами.
На рисунке 12 приведены примеры выделения регулярных областей на изображениях.
Рис. 12. Результат предобработки изображений
На рисунке 13 представлены примеры изображений, попавшие в «отказ» при обработке с помощью критерия регулярности.
Для эксперимента были реализованы точечные методы предобработки, описанные в ранних работах. В таблице 1 представлена скорость обработки изображений из используемой базы. Эксперимент проводился на компьютере с процессором Pentium III, 333 MHz. Как видно из таблицы, быстродействие описанного здесь алгоритма значительно выше по сравнению с существующими методами.
Таблица 1.
Метод предобработки Быстродействие (символов/сек)
Точечный алгоритм [9] 27
Точечный алгоритм [3] 49
Представленный алгоритм 142
(грубая аппроксимация границ)
Представленный алгоритм 108
(точная аппроксимация границ)
7. Заключение
Мы представили алгоритм предобработки изображений рукописных символов имеющий высокую вычислительную эффективность по сравнению с существующими методами. Описанный метод использует точечную обработку изображения только для построения граничной ломаной, этим достигается высокая скорость обработки и устойчивость к искажениям на границе.
Также, мы рассмотрели метод, позволяющий выявлять области, в которых невозможно восстановить траекторию, и тем самым находить изображения, для которых не применим структурный метод распознавания.
Заметим, что описанный алгоритм может быть использован не только в методах восстановления траектории символа. В любых подходах, где используется метод «скелетизация» изображения, его с успехом можно заменить описанным алгоритмом. При этом сохраняется скорость обработки, устраняются искажения границ и не будет потеряна связь точек траектории с граничными точками.
СПИСОК ЛИТЕРАТУРЫ
1. Govindan V.K., ShivaprasadA.P. Character recognition - a review // Pattern Recognition
— 1990. — V. 23. — N 7. — P. 671-683.
2. Tappert C.C., Suen C.Y., Wakahara T. The state of art in on-line handwriting recognition // IEEE Trans. Pattern Anal. Mach. Intell. — 1990. — V. 12. — N 8. — P. 787-808.
3. L'Homer E. Extraction of strokes in handwritten characters // Pattern Recognition — 2000.
— V. 33. — N 10. — P. 1147-1160.
4. Kato Y., Yasuhara M. Recovery of drawing order from single-stroke handwriting images // IEEE Trans. Pattern Anal. Mach. Intell. — 2000. — V. 22. — N 9. — P. 938-949.
5. Jager S. Recovering writing traces in off-line handwriting recognition: using a global optimization technique // Proc. 13th International Conference on Pattern Recognition — 1996.
— P. 150-154.
6. Nishida H. An approach to integration of off-line and on-line recognition of handwriting // Pattern Recognition Letters — 1995. — V. 16. — P. 1213-1219.
7. Lam L., Lee S.-W., Suen C.Y. Thinning methodologies - a comprehensive survey // IEEE Trans. Pattern Anal. Mach. Intell. — 1992. — V. 14. — N 9. — P. 869-885.
8. Котович Н.В., Славин О.А. Распознавание скелетных образов // Методы и средства работы с документами - сборник трудов Института системного анализа РАН — 2000.
9. Nishida H., Suzuki T., Mori S. Thin line representation from contour representation of handprinted characters. — in Simon J.-C., Impedovo S.(Ed.) From pixels to features III : Frontiers in handwriting recognition — Elsevier — Amsterdam — 1992 — P. 29-44.
10. Wall K., Danialsson P.-E. A fast sequential method for polygonal approximation of digitized curves // Computer Graphics and Image Processing — 1984. — V. 28. — P. 220-227.
11. Trier O. D., Jain A. K., Taxt T. Feature extraction methods for character recognition - a survey // Pattern Recognition — 1996. — V. 29. — N. 4. — P. 641-662.