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

Модульный подход к распознаванию текстовой информации из видеоряда Текст научной статьи по специальности «Компьютерные и информационные науки»

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

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Зотин А. Г.

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

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

THE MODULAR METHOD FOR RECOGNITION OF THE TEXT INFORMATION FROM VIDEO SERIES

This article considers the problem of recognition of the text information based on modular method. Function charts of work of separate modules are analyzed. The testing results of developed text recognition system realization are included.

Текст научной работы на тему «Модульный подход к распознаванию текстовой информации из видеоряда»

УДК 681.3

А. Г. Зотин

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

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

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

Рассмотрим задачу распознавания текста из видеофрагментов - набора кадров, закодированных некоторым видеокодом. В ходе решения данной задачи возникает ряд частных задач: нахождения текста на изображении, определения области обработки, выделения текстовых символов (с учетом нормализацией образов) и их распознавания (рис. 1).

Рассмотрим подробнее работу каждого модуля.

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

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

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

I__________________________________________________________________________________________________________________________________________________________________________I

шой промежуток времени (2...5 кадров). Для каждого вновь поступающего кадра фоновое изображение корректируется в соответствие со следующей формулой:

СЕоШ

(г, у) + 8, если у>СЕ (г, у) -

СЕоШ (г,у) >8,

СЕПе* (i, у) = СГоШ (i, У) - 8 , еСЛИ У > СЕоШ (Л У) - СЕ (Л У) > 8

С ЕоШ

(i, у), если \СЕ {г, у) -

СЕоШ {г>у) И8> где Сгм (г, У) - матрица яркостей точек предыдущего кадра; Ср (г, у) - матрица яркостей точек текущего кадра; СГпт (г, у) - матрица яркостей точек последующего кадра; У - порог изменения яркости; 8 - коэффициент коррекции (рекомендуется выбирать его значение равным 1.2 % от динамического диапазона яркости).

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

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

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

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

RedDiff = Abs(Red[X, Y] - Red[X + ШАГ, Y] );

GreenDiff= Abs(Green[X, Y] - Green[X + ШАГ, Y] );

BlueDiff = Abs(Blue[X, Y] - Blue[X + ШАГ, Y] ); PixelValue = RedDiff + GreenDiff + BlueDiff;

BlockValue = Sum (PixelValues);

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

1 - пригодный блок, 0 - непригодный блок 0111110 => BlockCount = 4 0110110 => BlockCoun t= 2 0101010 => BlockCount = 0

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

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

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

Разбиение линий на Расчет данных Анализ блоков

блоки W по блокам W в строке

1 Г

Расчет поисковых Анализ данных в Анализ строковых

областей области изображения характеристик

1 Г

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

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

m n

cnew И [ j] = ££ J CM [i- m /2, j - n /2].

k=0 l=0

В этой формуле коэффициент a определяет эффект, который накладывает фильтр.

Константы m и n задают размер фильтра (он является двумерным). При наложении фильтра Лапласа коэффициент a имеет вид

-І -І -І

a = -І 8 -І

-І -І -І

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

Проведя предварительную обработку поисковой области, перейдем к выделению образов текстовых символов (рис. 3).

Рис. 3. Функциональная схема нроцесса выделения образов

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

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

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

- горизонтальный размер блоков находится в пределах минимального разностного порога (обычно от 10 до 25 %).

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

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

Работу данного алгоритма можно условно разделить на три основных этапа:

- создание трехмерного представления на основе цветового кода (для всех ячеек изображения);

- формирование на основе трехмерного представления бинарного потока;

- передача бинарного потока в нейронную сеть для инициализации.

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

- в случае когда в результате распознавания не требуется выдача образа в явном виде, т. е. достаточно полу-

чить только номер образа, ассоциативная память успешно реализуется именно сетью Хэмминга [1];

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

- в модели использован один из самых простых алгоритмов формирования синаптических весов и смещений сети;

- в отличие от сети Хопфилда емкость сети Хэмминга не зависит от размерности входного сигнала, она точно равна количеству нейронов;

- данная сеть по сравнению с сетью Хопфилда характеризуется меньшими затратами на память и объем вычислений. К примеру, сеть Хопфилда с входным сигналом размерностью 100 может запомнить 10 образов, при этом у нее будет 10 000 синапсов. У сети Хэмминга с такой же емкостью будет всего лишь 10 00 синапсов.

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

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

На стадии инициализации весовым коэффициентам первого слоя w.k и порогу активационной функции Тк присваиваются следующие значения [1]:

Вход

Х1

1 слой

___ _______ 2 2

где I е 1, п ; к е 1, т ; хк - г-й элемент к-го эталона.

При этом весовые коэффициенты тормозящих синапсов второго слоя берутся равными некоторой величине 0 <у < 1 / т. Синапс нейрона, связанный с его аксоном, имеет вес + 1. Сеть Хэмминга функционирует по следующему итерационному алгоритму. На входы сети подается неизвестный бинарный потокX = {х.}, где / е 1, п, исходя из которого рассчитываются состояния нейронов первого слоя (верхний индекс в скобках указывает номер слоя)

У

(1)

У(2) — у(ч.

где ] е 1, т .

Состояния у(1) инициализируют значения аксонов второго слоя:

т

(р+1)=у] (р) - еХ у£2) (р)-

к=1

После этого вычисляются новые состояния нейронов второго слоя:

у(2)( р +1) = / [ ^(2)( р +1)],

где кфj^; у е 1,т , и значения их аксонов.

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

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

На основе изложенного в статье теоретического подхода реализован программно-аппаратный комплекс по

2 слой Обратная связь

Х1

Выход

>0 уі

У2

>0 У

>0 У„

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

Экспериментальным путем было выяснено, что применение алгоритма с количеством уровней, равным 4, дает увеличение точности распознавания на 3.10 % в зависимости от искаженности изображения.

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

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

А. G.

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

Показатели точности распознавания в граничном диапазоне смещения 10 единиц приведены в таблице.

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

Библиографический список

1. Идентификация ограниченного набора образов на основе ассоциативных нейронных сетей / М. Н. Фаворская, А. Г. Зотин, М. В. Дамов, Н. Д. Торгашин // Вестн. Сиб. гос. аэрокосмич. ун-та им. акад. М. Ф. Решетнева / под ред. проф. Г. П. Белякова ; Сиб. гос. аэрокосмич. ун-т. Вып. 5. Красноярск, 2004. С. 109-116.

Zotin

Изменение точности раснознавания в зависимости от иснользования алгоритма нсевдотрехмерного анализа

Точность распознавания Наименование символа

А в Е к м Н о Р С Т У x д 0 1 2 3 4 5 6 7 8 9

Без применения алгоритма 83 80 81 82 78 75 78 79 80 77 81 78 73 79 82 80 81 83 80 81 80 79 81

С применением алгоритма 91 86 89 91 86 81 84 86 86 83 88 84 81 88 89 87 90 89 88 89 88 86 87

THE MODULAR METHOD FOR RECOGNITION OF THE TEXT INFORMATION FROM VIDEO SERIES

This article considers the problem of recognition of the text information based on modular method. Function charts of work of separate modules are analyzed. The testing results of developed text recognition system realization are included.

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