Программное обеспечение системы обработки изображения в реальном времени
Федеральное агентство по образованию
ЮЖНО-УРАЛЬСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
Факультет - Приборостроительный
Кафедра - Автоматика и управление
ПРОЕКТ ПРОВЕРЕН ДОПУСТИТЬ К ЗАЩИТЕ
Рецензент Заведующий кафедрой
____________________________ ______________________
“_____” _____________ 2007__ г. “ _____ “ ____________ 2007__ г.
Программное обеспечение системы обработки изображения в реальном времени
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА К ДИПЛОМНОМУ ПРОЕКТУ
ЮУрГУ-Д.220200 068.000.ПЗ
Консультанты: Руководитель проекта:
______________________________ ___________________________
______________________________ _______________________________
“ _____ “ ______________ 2007 _ г. Автор проекта
студент группы ПС-269м .
______________________________ Пушников А.А. .
“ ____ “ ________________ 2007 _ г.
______________________________ Нормоконтролер
______________________________ ______________________________
“ ____ “ ________________ 2007 _ г. “ _____ “ ______________ 2007 г.
Челябинск
2007 г.
ВВЕДЕНИЕ
АНАЛИЗ ЗАДАЧИ. ОБЗОР СУЩЕСТВУЮЩИХ МЕТОДИК РЕШЕНИЯ
1. ВЫДЕЛЕНИЕ ОБЪЕКТА НА ИЗОБРАЖЕНИИ
1.1. ОБЩИЙ АЛГОРИТМ СРАВНЕНИЯ ДВУХ ИЗОБРАЖЕНИЙ
1.2. МЕТОД МАКСИМАЛЬНЫХ ПЛОЩАДЕЙ
1.3. МЕТОД ГИСТОГРАММ
1.4. ПОДГОТОВКА ИЗОБРАЖЕНИЯ К РАСПОЗНАВАНИЮ
2. ЗАДАЧА РАСПОЗНАВАНИЕ ОБЪЕКТА
2.1. МЕТОД НАИМЕНЬШИХ КВАДРАТОВ
2.2. МОДЕЛИРОВАНИЕ МНОГОМЕРНОЙ ФУНКЦИИ. РАСПРЕДЕЛЕНИЯ ВЕКТОРОВ, ПРИЗНАКОВ ИЗОБРАЖЕНИЯ ОБЪЕКТА
Факторный анализ (FA)
Метод главных компонент (PCA)
Анализ независимых компонент (ICA)
Линейный Дискриминантный анализ (Linear Discriminant Analysis, LDA)
2.3. ДЕФОРМИРУЕМЫЕ МОДЕЛИ.
2.4. СКРЫТЫЕ МАРКОВСКИЕ МОДЕЛИ (Hidden Markov Models, HMM)
2.5. МЕТОД ОПОРНЫХ ВЕКТОРОВ (Support Vector Machines, SVM)
3. РЕАЛИЗАЦИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
ЗАКЛЮЧЕНИЕ
Введение
В настоящее время вычислительная техника используется во многих областях человеческой деятельности, являясь удобным и многофункциональным инструментом решения широкого круга задач. Многие отрасли техники, имеющие отношение к получению, обработке, хранению и передаче информации, в значительной степени ориентируются в настоящее время на развитие систем, в которых информация имеет характер изображений. Изображение, которое можно рассматривать как двумерный сигнал, является значительно более емким носителем информации, чем обычный одномерный (временной) сигнал. Вместе с тем, решение научных и инженерных задач при работе с визуальными данными требует особых усилий, опирающихся на знание специфических методов, поскольку традиционная идеология одномерных сигналов и систем мало пригодна в этих случаях. В особой мере это проявляется при создании новых типов информационных систем, решающих такие проблемы, которые до сих пор в науке и технике не решались, и которые решаются сейчас благодаря использованию информации визуального характера.
Цель машинного зрения - принятие решений о реальных физических объектах и сценах, основываясь на воспринимаемых изображениях. Машинное зрение теснейшим образом взаимодействует с областью обработки изображений, часто трудно однозначно отнести возникающие задачи и применяемые методы решения к одной из этих областей.
Анализ задачи. Обзор существующих методик решения
Постановка задачи:
Разработать методы поиска на изображении, получаемом с видеокамеры, детали, с дальнейшей идентификацией ее к одной из трех групп, с целью автоматизации технического процесса.
Задачу можно разделить на три основных этапа:
Выделение объекта на изображении.
Подготовка изображения к распознаванию.
Задача распознавание объекта.
Для решения каждой подзадачи, в настоящее время, существует множество различных методик.
1. Выделение объекта на изображении
Для успешного решения задачи распознавания, необходимо выделить искомый объект на изображении, и привести его к нормализованному виду, пригодному для распознавания.
Основной метод нахождения объекта на изображении – сравнение исследуемого изображения с эталонным. При конечной его реализации, возможны значительные изменения в алгоритме нахождения объектов.
Критерием успешности выполнения алгоритма, могут служить:
Оценка успешности человеком.
Анализ количества найденных объектов.
Анализ размеров найденных объектов.
Анализ расположения найденных объектов.
Анализ цветов найденных объектов.
1.1.Общий алгоритм сравнения двух изображений
Определим эталонное изображение, как множество точек , а исследуемое изображение, как множество . Пусть - функция яркости точки изображений, определённая на множествах и . Одним из распространённых подходов для определения областей движения между двумя кадрами изображения и основывается на сравнении соответствующих точек этих двух кадров. [3],[4]. Для этого применяется процедура формирования «разности» кадров. Разностью между двумя изображениями, является следующее множество:
где - значение порогового уровня, выбираемое таким образом, чтобы отделить точки, в которых кадры изображения значительно отличаются друг от друга, как правило это искомые объекты, от точек, в которых яркость изменилась незначительно, в связи с мерцание освещения, вибрацией камеры и другими помехами. Изображение содержит предположительные области движения объектов и аддитивный шум, искажающий текущий кадр. Избавится от шума, позволяют морфологические операции (операции над бинарным изображением), такие как эрозия, коррозия, а так же различные способы фильтрации и оптимальное (экспериментально подбираемое) значение порога .
Далее, можно обработать найденные объекты, для этого используются:
Метод максимальных площадей.
Метод гистограмм.
Алгоритм был реализован с помощью библиотеки для обработки изображений OpenСV. При тестировании алгоритма использовались изображения игровой доски для игры в го с белыми и чёрными камнями. Пример его работы представлен на рис .
№ | Эталонное изображение | Исследуемое изображение |
Разностное изображение |
Бинаризированое изображение , при =10 |
Отфильтрованное изображение |
1 |
|||||
2 | |||||
3 |
Рис. Пример работы алгоритма.
В первом столбце находятся изображения доски, являющиеся эталонными. Во втором столбце – исследуемыми. Из третьего столбца видно как изменилось положение камней на доске. В четвёртом и пятом столбцах показано соответственно результат бинаризации изображения третьего столбца и результат последовательных применений операций коррозии и эрозии к изображению в четвёртом столбце.
1.2. Метод максимальных площадей
Метод приводит найденные объекты к форме, более удобной для дальнейшей обработки, и объединяет отдельные области на разностном изображении в области по признаку их близости друг другу [].
Необходимо выделить области правильной формы, являющиеся достаточно крупными объектами. Задачу можно формализовать следующим образом: необходимо разбить множество точек на максимально возможное число непересекающихся подмножеств .
Предложим следующий алгоритм решения:
1. На множестве конструируем подмножества , содержащие связанные точки, выбранные как лежащие рядом друг с другом.
2. Конструируем новые подмножества , охватывающие те подмножества , которые лежат рядом друг с другом.
3. Повторяем пункт 2 до тех пор, пока не получим конечное количество подмножеств .
Метод был адаптирован и реализован функциями библиотеки OpenCV. Пример его работы представлен на рис.
№ |
Разностное изображение |
Результат: области правильной формы | |
Круг | Прямоугольник | ||
1 | |||
2 | |||
3 |
Рис. Пример работы алгоритма для разных областей правильной формы.
В первом столбце показаны изображения, полученные после алгоритма сравнения двух изображений. Во втором и третьем столбцах показаны результаты работы вышеописанного алгоритма. Во втором столбце в результате преобразований мы получаем область в виде круга, а в третьем в виде прямоугольника.
В первой и второй строке исходным является изображение руки. Как видно, область движения руки не является однородной. В результате работы алгоритма, область движения руки сводиться к однородной области правильной формы (круг, прямоугольник).
В третьей строке исходным является изображение камня на игровой доске. Аналогично, в результате работы алгоритма область движения камня сводиться к однородной области правильной формы (круг, прямоугольник).
1.3 Метод гистограмм
В методе используется гистограмма изображения искомого объекта для нахождения объекта с такими же цветовыми характеристиками на серии изображений.
Нужно построить изображение в оттенках серого цвета, содержащее необходимые нам объекты.
Введём оператор, который преобразует функцию яркости изображения в функцию количественного распределения пикселей с определенным значением яркости (гистограмму) (где k – численное значение яркости):
Обратный оператор преобразует гистограмму в изображение в оттенках серого.
Алгоритм состоит из следующих этапов:
Построение гистограмм искомого объекта и исходного изображения
Формируем новую гистограмму, как нормированное произведение