Смекни!
smekni.com

Программное обеспечение системы обработки изображения в реальном времени (стр. 5 из 5)

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

3. Реализация программного обеспечения

В ходе работы над бакалаврской работой была написана программа, Выделяющая на изображении искомые объекты и нормирующая их.

Программа представляет собой простое SDI-приложение, написанное в среде BuilderC++ v. 6.0. Для реализации обработки изображения использовалась библиотека Intel® Open Source Computer Vision Library (OpenCV).

В программе были использованы следующие функции библиотеки OpenCV:


Функция

Описание функции
cvLoadImage Загружает изображение из файла
cvSize Возвращает размер изображения
cvCreateImage Создает новое изображение
cvAbsDiff Производит вычитание по модулю двух изображений
cvCmpS Бинаризирует изображении, используя порог
cvErode Выполняет побитовую операцию эрозии изображения
cvCamShift Реализует алгоритм сравнения двух изображений
cvGetQuadrangleSubPix Производит аффинное преобразование изображения
cvSetZero Заполняет изображение черным цветом
cvFillConvexPoly Заполняет многоугольник на изображении заданным цветом
cvCopy Копирует изображение

Также были использованы следующие классы:

Класс Описание класса
IplImage Изображение
CvSize Размер матрицы
CvPoint Точка
CvRect Прямоугольник
CvBox2D Прямоугольник
CvMat Матрица

Алгоритм программы:

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


Заключение

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