Федеральное агентство по образованию
ЮЖНО-УРАЛЬСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
Факультет - Приборостроительный
Кафедра - Автоматика и управление
ПРОЕКТ ПРОВЕРЕН ДОПУСТИТЬ К ЗАЩИТЕ
Рецензент Заведующий кафедрой
____________________________ ______________________
“_____” _____________ 2007__ г. “ _____ “ ____________ 2007__ г.
Программное обеспечение системы обработки изображения в реальном времени
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА К ДИПЛОМНОМУ ПРОЕКТУ
ЮУрГУ-Д.220200 068.000.ПЗ
Консультанты: Руководитель проекта:
______________________________ ___________________________
______________________________ _______________________________
“ _____ “ ______________ 2007 _ г. Автор проекта
студент группы ПС-269м .
______________________________ Пушников А.А. .
“ ____ “ ________________ 2007 _ г.
______________________________ Нормоконтролер
______________________________ ______________________________
“ ____ “ ________________ 2007 _ г. “ _____ “ ______________ 2007 г.
Челябинск
2007 г.
№ |
Эталонное изображение |
Исследуемое изображение |
Разностное изображение |
Бинаризированое изображение , при =10 |
Отфильтрованное изображение |
|
1 |
||||||
2 |
||||||
3 |
Рис. Пример работы алгоритма.
В первом столбце находятся изображения доски, являющиеся эталонными. Во втором столбце - исследуемыми. Из третьего столбца видно как изменилось положение камней на доске. В четвёртом и пятом столбцах показано соответственно результат бинаризации изображения третьего столбца и результат последовательных применений операций коррозии и эрозии к изображению в четвёртом столбце.
1.2. Метод максимальных площадей
Метод приводит найденные объекты к форме, более удобной для дальнейшей обработки, и объединяет отдельные области на разностном изображении в области по признаку их близости друг другу [].
Необходимо выделить области правильной формы, являющиеся достаточно крупными объектами. Задачу можно формализовать следующим образом: необходимо разбить множество точек на максимально возможное число непересекающихся подмножеств .
Предложим следующий алгоритм решения:
1. На множестве конструируем подмножества , содержащие связанные точки, выбранные как лежащие рядом друг с другом.
2. Конструируем новые подмножества , охватывающие те подмножества , которые лежат рядом друг с другом.
3. Повторяем пункт 2 до тех пор, пока не получим конечное количество подмножеств .
Метод был адаптирован и реализован функциями библиотеки OpenCV. Пример его работы представлен на рис.
№ |
Разностное изображение |
Результат: области правильной формы |
||
Круг |
Прямоугольник |
|||
1 |
||||
2 |
||||
3 |
Рис. Пример работы алгоритма для разных областей правильной формы.
В первом столбце показаны изображения, полученные после алгоритма сравнения двух изображений. Во втором и третьем столбцах показаны результаты работы вышеописанного алгоритма. Во втором столбце в результате преобразований мы получаем область в виде круга, а в третьем в виде прямоугольника.
В первой и второй строке исходным является изображение руки. Как видно, область движения руки не является однородной. В результате работы алгоритма, область движения руки сводиться к однородной области правильной формы (круг, прямоугольник).
В третьей строке исходным является изображение камня на игровой доске. Аналогично, в результате работы алгоритма область движения камня сводиться к однородной области правильной формы (круг, прямоугольник).
1.3 Метод гистограмм
В методе используется гистограмма изображения искомого объекта для нахождения объекта с такими же цветовыми характеристиками на серии изображений.
Нужно построить изображение в оттенках серого цвета, содержащее необходимые нам объекты.
Введём оператор, который преобразует функцию яркости изображения в функцию количественного распределения пикселей с определенным значением яркости (гистограмму) (где k - численное значение яркости):
Обратный оператор преобразует гистограмму в изображение в оттенках серого.
Алгоритм состоит из следующих этапов:
1. Построение гистограмм искомого объекта и исходного изображения
2. Формируем новую гистограмму, как нормированное произведение и :
3. Используя обратное преобразование , получаем двумерную функцию, которая является искомым изображением в оттенках серого:
Метод был адаптирован и реализован функциями библиотеки OpenCV. Результаты применения метода приведены на рис.
Доска |
Черный камень |
Белый камень |
|||
Искомое изображение |
|||||
Гистограмма искомого изображения |
|||||
Исходное изображение |
По гистограмме доски |
По гистограмме черного камня |
По гистограмме белого камня |
||
№ |
|||||
1 |
|||||
2 |
|||||
3 |
Искомыми изображениями являются изображения игровой доски, чёрного и белого камня. В таблице представлены их гистограммы.
Во всех трёх опытах к исходному изображению, содержащему область движения, применялся вышеописанный метод. В результате в каждом из опытов были получены три изображения. Каждое из изображений содержит область, в которой нахождение искомого объекта максимально, т.е. максимально количество белых пикселей в этой области
1.4. Подготовка изображения к распознаванию
С точки зрения задачи распознавания, более удобно использовать изображения объектов, имеющие одинаковый размер и приблизительно одинаковую ориентацию в пространстве. Однако, алгоритмы выделения объектов, возвращают объекты, искаженные перспективой - различных размеров и произвольно ориентированных на изображении.
Для приведения изображения найденного объекта к общему виду, необходимо повернуть его на нужный угол. В эталонных и исследуемых изображениях объектов находятся две контрольные точки, после чего изображения разворачивают, так чтобы вектора, соединяющие эти точки, совпали.
Контрольными точками могут быть, например:
1. Видимый центр изображения.
2. Центр масс изображения.
3. Точка, заметно отличающаяся от остальных по цвету.
4. Центр маркера, поставленного на объекте
и др.
Также, необходимо, привести эталонные и исследуемые изображения к одному размеру.
Перечисленные выше операции выполняются аффинными преобразованиями над матрицами изображений, общий вид которых:
Используются частные случаи аффинных преобразованияй:
1. Растяжение (сжатие) вдоль координатных осей, задаваемое в виде:
Растяжению вдоль соответствующей оси соответствует значение масштабного множителя большего единицы. В однородных координатах матрица растяжения (сжатия) имеет вид
.
2. Поворот вокруг начальной точки на угол , описываемый формулой:
Матрица вращения (для однородных координат)
.
3. Перенос, задаваемый простейшими соотношениями:
Матрица переноса имеет вид
.
Количество и свойства графических примитивов в объекте (прямых линий, окружностей - для распознавания символов) (на основе преобразования Хафа)
2.1. Метод наименьших квадратов
Перед тем, как начинать рассмотрение МГУА, было бы полезно вспомнить или узнать впервые метод наименьших квадратов -- наиболее распространенный метод подстройки линейно зависимых параметров.
Рассмотрим для примера МНК для трех аргументов:
Пусть функция T=T(U, V, W) задана таблицей, то есть из опыта известны числа U-i, Vi, Wi, Ti ( i = 1, … , n). Будем искать зависимость между этими данными в виде:
(ф. 1)
где a, b, c -- неизвестные параметры.
Подберем значения этих параметров так, чтобы была наименьшей сумма квадратов уклонений опытных данных Ti и теоретических Ti = aUi + bVi + cWi, то есть сумма:
(ф. 2)
Величина является функцией трех переменных a, b, c. Необходимым и достаточным условием существования минимума этой функции является равенство нулю частных производных функции по всем переменным, то есть:
(ф. 3)
Так как:
(ф. 4)
то система для нахождения a, b, c будет иметь вид:
(ф. 5)
Данная система решается любым стандартным методом решения систем линейных уравнений (Гаусса, Жордана, Зейделя, Крамера).
Рассмотрим некоторые практические примеры нахождения приближающих функций:
1. y = x2 + x +
Задача подбора коэффициентов , , сводится к решению общей задачи при T=y, U=x2, V=x, W=1, =a, =b, =c.
2. f(x, y) = sin(x) + cos(y) + /x
Задача подбора коэффициентов , , сводится к решению общей задачи при T=f, U=sin(x), V=cos(y), W=1/x, =a, =b, =c.
Если мы распространим МНК на случай с m параметрами,
(ф. 6)
то путем рассуждений, аналогичных приведенным выше, получим следующую систему линейных уравнений:
(ф. 7)
где ,
2.2. Моделирование многомерной функции распреде
ления векторов признаков изображений объекта
Линейный Дискриминантный Анализ, в отличие от МГК и ФА не ставит своей целью найти подпространство меньшей размерности, наилучшим образом описывающее набор тренировочных изображений. Его задача - найти проекцию в пространство, в котором разница между различным классами объектов максимальна. Это требование формулируется как получение максимально компактных кластеров, соответствующих различным классам, удаленных на максимально возможное расстояние. С помощью ЛДА удается получить подпространство небольшой размерности, в котором кластеры изображений пересекаются минимально. Производить классификацию в таком пространстве значительно проще.
2.3. Деформируемые модели
Начало формы
Конец формы
В машинном зрении деформируемые модели являются мощным инструментом анализа и обработки данных. Деформируемые модели, в отличии от жестких (rigid), обладают большой гибкостью (имеют возможность представлять объекты с сильно различающейся формой) и в то же время дают возможность указать достаточно строгие ограничения на нежелательные изменения формы представляемых объектов.
В качестве примеров использования деформируемых моделей можно привести:
· выделение (локализация) объектов и структур определенного вида на 2D и 3D изображениях (черт человеческого лица, объектов на медицинских изображениях)
· отслеживания перемещения объектов между кадрами видеопотока.
· сегментация 2D и 3D изображений
· гладкая аппроксимации разреженного облака точек
· реконструкции 3D формы объекта по 2D изображениям - с помощью стерео, восстановления формы по закраске (shape from shading)
Использование деформируемых моделей при решение задачи обработки и распознавания изображений обычно позволяет в элегантной математической форме описать одновременное воздействие многих (возможно, противоречивых) факторов на процесс получения оптимального решения.
Конкретная деформируемая модель характеризуется:
· Способом задания формы модели (аналитические кривые и поверхности, конечные элементы);
· Способом измерения критерия согласия (goodness of fit) модели и измеренных данных;
Способом модификации формы модели (по каким именно правилам (формулам) происходит изменение формы модели);
2.4. Скрытые Марковские Модели (Hidden Markov Models, HMM)
Скрытые Марковские Модели (СММ) являются одним из способов получения математической модели (описания свойств) некоторого наблюдаемого сигнала. СММ относятся к классу стохастических моделей. Стохастические модели пытаются охарактеризовать только статистические свойства сигнала, не обладая информацией о его специфических свойствах. В основу стохастических моделей положено допущение о том, что сигнал может быть описан некоторым параметрическим случайным процессом и что параметры этого процесса могут быть достаточно точно оценены некоторым, вполне определенным способом. Настроенную СММ можно рассматривать как источник некоторого случайного сигнала со вполне определенными характеристиками. Для настроенной СММ есть возможность подсчитать вероятность генерации тестового сигнала данной моделью. В приложении к задаче распознавания, представив вектор признаков объекта в виде сигнала (набора последовательных наблюдений), можно смоделировать класс объектов с помощью СММ. Вероятность принадлежности тестового объекта классу, заданному СММ оценивается как вероятностью генерации сигнала, соответствующего его вектору признаков. Настройка (обучение) СММ - состоит в модификации ее параметров для того, чтобы добиться максимальной вероятности генерации сигналов, соответствующих векторам тренировочного набора.
2.5. Метод Опорных Векторов (Support Vector Machines, SVM)
Цель тренировки большинства классификаторов - минимизировать ошибку классификации на тренировочном наборе (называемую эмпирическим риском). В отличие от них, с помощью метода опорных векторов можно построить классификатор минимизирующий верхнюю оценку ожидаемой ошибки классификации (в том числе и для неизвестных объектов, не входивших в тренировочный набор). Применение метода опорных векторов к задаче распознавания заключается в поиске гиперплоскости в признаковом пространстве, отделяющей классы.
Функция |
Описание функции |
|
cvLoadImage |
Загружает изображение из файла |
|
cvSize |
Возвращает размер изображения |
|
cvCreateImage |
Создает новое изображение |
|
cvAbsDiff |
Производит вычитание по модулю двух изображений |
|
cvCmpS |
Бинаризирует изображении, используя порог |
|
cvErode |
Выполняет побитовую операцию эрозии изображения |
|
cvCamShift |
Реализует алгоритм сравнения двух изображений |
|
cvGetQuadrangleSubPix |
Производит аффинное преобразование изображения |
|
cvSetZero |
Заполняет изображение черным цветом |
|
cvFillConvexPoly |
Заполняет многоугольник на изображении заданным цветом |
|
cvCopy |
Копирует изображение |
Также были использованы следующие классы:
Класс |
Описание класса |
|
IplImage |
Изображение |
|
CvSize |
Размер матрицы |
|
CvPoint |
Точка |
|
CvRect |
Прямоугольник |
|
CvBox2D |
Прямоугольник |
|
CvMat |
Матрица |
Алгоритм программы:
Начало > Загружаем изображение-эталон > Отображаем эталон на экране > Ждем щелчка мыши > Загружаем исследуемое изображение > Отображаем эталон на экране > Ждем щелчка мыши > Выполняем вычитание двух изображений > Бинаризируем результат > Отображаем результат на экране > Ждем щелчка мыши > Выполняем эрозию результата > Отображаем результат на экране > Ждем щелчка мыши > Находим минимальный прямоугольник, охватывающий найденные объекты > Поворачиваем исследуемое изображение > Отображаем результат на экране > Ждем щелчка мыши > Нормализуем результат > Отображаем результат на экране > дем щелчка мыши > Конец
Заключение
В работе создана программа обработки изображений. В дальнейшем планируется разработка программного обеспечения для классификации полученных образов.
! | Как писать дипломную работу Инструкция и советы по написанию качественной дипломной работы. |
! | Структура дипломной работы Сколько глав должно быть в работе, что должен содержать каждый из разделов. |
! | Оформление дипломных работ Требования к оформлению дипломных работ по ГОСТ. Основные методические указания. |
! | Источники для написания Что можно использовать в качестве источника для дипломной работы, а от чего лучше отказаться. |
! | Скачивание бесплатных работ Подводные камни и проблемы возникающие при сдаче бесплатно скачанной и не переработанной работы. |
! | Особенности дипломных проектов Чем отличается дипломный проект от дипломной работы. Описание особенностей. |
→ | по экономике Для студентов экономических специальностей. |
→ | по праву Для студентов юридических специальностей. |
→ | по педагогике Для студентов педагогических специальностей. |
→ | по психологии Для студентов специальностей связанных с психологией. |
→ | технических дипломов Для студентов технических специальностей. |
→ | выпускная работа бакалавра Требование к выпускной работе бакалавра. Как правило сдается на 4 курсе института. |
→ | магистерская диссертация Требования к магистерским диссертациям. Как правило сдается на 5,6 курсе обучения. |
Дипломная работа | Формирование устных вычислительных навыков пятиклассников при изучении темы "Десятичные дроби" |
Дипломная работа | Технологии работы социального педагога с многодетной семьей |
Дипломная работа | Человеко-машинный интерфейс, разработка эргономичного интерфейса |
Дипломная работа | Организация туристско-экскурсионной деятельности на т/к "Русский стиль" Солонешенского района Алтайского края |
Дипломная работа | Разработка мероприятий по повышению эффективности коммерческой деятельности предприятия |
Дипломная работа | Совершенствование системы аттестации персонала предприятия на примере офиса продаж ОАО "МТС" |
Дипломная работа | Разработка системы менеджмента качества на предприятии |
Дипломная работа | Организация учета и контроля на предприятиях жилищно-коммунального хозяйства |
Дипломная работа | ЭКСПРЕСС-АНАЛИЗ ФИНАНСОВОГО СОСТОЯНИЯ ООО «АКТ «ФАРТОВ» |
Дипломная работа | Психическая коммуникация |
Дипломная работа | Пути повышения качества продукции |
Дипломная работа | Организация расчетно-кассового обслуживания клиентов банка |
Дипломная работа | Проект мероприятий по повышению финансовой устойчивости |
Дипломная работа | Учет и анализ расчетов с персоналом по оплате труда |
Дипломная работа | Бухгалтерская отчетность организации состав содержание и использование в анализе |
Дипломная работа | Строительство автомобильных дорог |
Дипломная работа | Пластиковые карты Сбербанка России |
Дипломная работа | Учет, анализ и аудит дебиторской задолженности |
Дипломная работа | Сварка |
Дипломная работа | Совершенствование системы управления земельными ресурсами |
Дипломная работа | Маркетинговая политика продвижения продукции (пластиковые окна) |
Дипломная работа | Управление качеством продукции |
Дипломная работа | Управління процесом обслуговування в закладах ресторанного господарства |
Дипломная работа | Управление сбытом на предприятии |
Дипломная работа | Позиционирование товара на рынке |