Метод распознавания фигур с использованием фурье-дескрипторов и нейронной сети

МЕТОД РАСПОЗНАВАНИЯ ФИГУР С ИСПОЛЬЗОВАНИЕМ ФУРЬЕ-ДЕСКРИПТОРОВ И НЕЙРОННОЙ СЕТИ

Т. Т. Нгуен

Институт кибернетики Национального исследовательского Томского политехнического университета, 634034, Томск, Россия

УДК 004.931

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

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

This paper provides a brief review on contour-based shape signatures. A new algorithm for shape recognition based on Fourier descriptors and multilayer neural network is proposed. The paper also presents an analysis on the capabilities of the Fourier-descriptors as the input data for neural networks in recognition of the complex shapes.

Key words: Fourier descriptors, shape recognition, neural networks, multilayer perceptron

Введение. Распознавание образов является главной задачей в области машинного зрения. Многие задачи распознавания объектов на изображениях могут сводиться к распознаванию фигур - частному случаю распознавания образов. Эффективным и легкореализуемым способом представления фигур является использование фурье-дескрипторов [1]. В данной работе фурье-дескрипторы применяются совместно с нейронной сетью для решения задачи распознавания фигур.

Простые методы представления фигур на основе контура. Существующие методы представления фигур можно классифицировать следующим образом: это методы, основанные на контуре, и методы, основанные на области, пространственном домене и домене преобразования; информационно-сохраняющие (IP) и информационно-несохраняющие методы (NIP). В зависимости от способа обработки подходы к выделению и представлению фигур обычно разделяются на одномерные функции представления фигуры (one-dimensional function), аппроксимацию полигонов polygonal approximation), взаимосвязь пространственных признаков (spatial interrelation feature), моменты (moments), методы деления шкалы (scale-space methods), домены преобразования фигуры (shape transform domains) [2].

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

ры. Все эти понятия (кроме фурье-дескрипторов) относятся к классу одномерных функций представления фигуры.

Комплексные координаты. Допустим, что изображение представляется в виде функции /(х,у) и Рп = (хп, уп), п = [1, N] - множество точек на границе (контуре) фигуры. В этом случае

zn=xn+iyn называется комплексной координатой, которую можно использовать в качестве характеристики или дескриптора фигуры либо в качестве входных данных для фурье-преобразования. При этом контур обозначается в виде функции Р^п, п=[1Д].

Данный способ очень прост в реализации, но имеет ряд недостатков: получаемый результат является неинвариантным к перемещению, масштабированию и вращению. Чтобы комплексные координаты 2п были инвариантными к перемещению, они вычисляются с учетом центра тяжести (центроид): zn=(xn-xg)+i(yn-yg), где g=(xg,yg) - центр тяжести фигуры.

Функция расстояния. Функция расстояния Яп для контура Рп=(хп,уп), п=[1,^ вычисляется как расстояние от неподвижной точки С(х0,у0) до каждой точки (хп,уп). В качестве точки С обычно выбирается центроид фигуры [2]:

Функция расстояния имеет те же преимущества и недостатки, что и комплексные координаты.

Касательный угол. Каждый контур считается кривой линией, поэтому можно рассчитать угол наклона прямой, касательной к каждой его точке [2]:

вп = аг^

с \

Уп у п-V

V хп хпУ

Здесь V - окно небольшого размера.

Несмотря на простоту реализации, данный метод имеет два существенных недостатка: чувствительность к шуму и прерывность. Для того чтобы избежать прерывности, определяется кумулятивная угловая функция рп =вп — 9й, где в0 - касательный угол к случайной выбранной

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

Фурье-дескрипторы. Фурье-дескрипторы получаются в результате применения фурье-преобразования к указанным выше одномерным функциям представления фигуры [3, 4]. Фурье-дескрипторами называются нормированные коэффициенты фурье-разложения. Предположим, что контур объекта обозначается непрерывной и периодичной функцией с(¿), при этом

2 Т 2 Т I-

ак = — ) cos(ka>t, Ък = — |с(?) sm(ka>t, ск ак2 + Ь}

Т 0 Т 0

(ак - реальная часть; Ьк - мнимая часть; ск - фурье-дескриптор).

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

Алгоритм и его реализация. Процесс реализации системы включает два этапа: обучение и тестирование. Общая схема алгоритма показана на рис. 1. База данных для обучения содержит

Исходное изображение

Последовательность точек контура

Извлечение контура

Мо

Д

Получение кумулятивной угловой функции

v -1

Кумулятивная угловая функция

Применение фурье-преобразования

v

Коэффициенты фурье-преобразования

Распознавание

v

Классы

гаиН

°V о DIA

Рис. 1. Общая схема алгоритма

Рис. 2. База данных для обучения нейронной сети

20 "чистых" изображений одного объекта на черном фоне. Объекты делятся на следующие классы: окружности, треугольники, прямоугольники, полигоны (рис. 2).

Для выделения внешних граничных точек используется алгоритм соседних точек Мора (Moore's neighbors) [5]. Результат выделения границы объекта с помощью алгоритма Мора представлен на рис. 3.

Выделенный контур сохраняется в виде массива точек Pn = (xn, yn), n = [1, N], где N - количество граничных точек. Точки упорядочены по часовой стрелке. В каждой точке определяется угол наклона касательной линии к горизонтальной оси (угловая функция). Угловая функция меняется в диапазоне [0, 2ж). Таким образом, она прерывна (резкий переход из 2ж в 0) и не может служить исходной функцией для фурье-преобразования. Для устранения этой проблемы используется кумулятивная угловая функция. Однако кумулятивная функция имеет ряд недостатков: она прерывна в последней точке контура и ее значения зависят от длины контура. Для того чтобы можно было применить фурье-преобразование, кумулятивная функция должна быть нормирована [3]:

ф*0* ) = Ф

L

\

t

VJ

+1

(ф - кумулятивная функция; ф - нормированная функция; L - длина контура).

а б

Рис. 3. Выделение контура с использованием алгоритма Мора: а - исходное изображение; б - объект с выделенным контуром

а

л

100

50

0 50 100

О 50 100 150 200 '250

Refo)

5/К

Л

О 1 2 3 I S lif

е

!т

0.1

O.OS

О 5 10 16 70

'Л//'

lllhiiiiii.iiii.il

f

-0.05

1£

20

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

В результате применения фурье-преобразования к нормированной кумулятивной угловой функции имеем (рис. 4,д-ж):

12л 2л

л * 1 л * /22

ак = — I р ^)ео8(к^) Ш, Ьк = — I р ^)$т(к*) Л, ск = ак + Ьк. л * л 1

л

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

Для распознавания фигур применяется традиционная многослойная нейронная сеть с обратным распространением ошибки, структура которой показана на рис. 5. В качестве функции активации используется обычная биполярная сигмоидальная функция. Для повышения скорости сходимости сети применяются следующие модификации: (Nguyen - '^ёга,№)-инициация, моментум, групповое обновление [6]. Эксперимент показывает, что 40 - 60 нейронов в скрытом слое дают лучший результат с точки зрения соотношения время обучения - сходимость. В данной работе используются 50 скрытых нейронов.

f

f

Входной слой -20 нейронов

Скрытый слой -50 нейронов

Выходной слой 4 нейрона

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

На этапе обучения сеть сходится после 10 000 эпох со среднеквадратичной ошибкой, равной 0,001. Программа протестирована 50 раз с использованием тестовой базы данных, состоящей из 18 изображений (рис. 6). Частота появления ошибок составляет 0,1 %.

Для проверки эффективности работы алгоритма созданы другие базы данных тренировки и тестирования (рис. 7). Полученные результаты показали, что алгоритм позволяет распознавать достаточно сложные фигуры, состоящие из простых элементов (круг, эллипс, треугольники и т. д.) с высокой точностью: в результате обработки данных, показанных на рис. 7, после 30 тестов обнаружены две ошибки (частота ошибок - 0,15 %).

1а1 о Ю

°Ь ом

НИИ

Рис. 6. Тестовые изображения

а

•51Ф

4 £

ФИФ

оИо

44144 13

Рис. 7. Распознавание сложных фигур: а - обучение; б - тестирование

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

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

1. Folkers A., Samet H. Content-based image retrieval using Fourier descriptors on a logo database // Proc. of the 16th Intern. conf. on pattern recognition, Quebec (Canada), 11-15 Aug. 2002. Washington:

IEEE Computer Soc., 2002. V. 3. P. 521- 524.

2. Zhang D., Lu G. Review of shape representation and description techniques // Pattern Recognition. 2004. V. 37. P. 1-19.

3. Nixon M. Feature extraction and image processing / M. Nixon, A. Aguado. Oxford: Elsevier, 2008. 406 p.

4. Pattern recognition techniques, technology and applications / Ed. by Peng-Yeng Yin. Croatia: InTech, 2008. 626 p.

5. Ghuneim A. G. Moore-neighbor tracing // Contour Tracing. 2010. http://www.imageprocessingplace. com/downloads_V3/root_downloads/tutorials/contour_tracing_Abeer_George_Ghuneim/moore.html.

6. Fausett L. V. Fundamentals of neural networks-architectures, algorithms, and applications. Upper Saddle River: Prentice Hall, 1993. 461 p.

Нгуен Тоан Тханг - асп. Института кибернетики Томского политехнического университета; тел.: (382-2)70-16-09; e-mail: thangngt.cntt@gmail.com

Дата поступления - 02.11.11