Система нахождения графических примитивов на изображении на основе преобразования Хафа
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
аметры, характеризующие форму и расположение графического примитива. В основе построения любых графических элементов в современных графических библиотеках лежат три основных примитива: точка, отрезок и треугольник. Нередко в качестве примитива выступают прямоугольники, окружности, эллипсы, полигоны произвольных форм и др. Классификация графических примитивов приведена в таблице 1. В большинстве задач, решаемых в рамках компьютерного зрения, особое значение имеют точки, отрезки, треугольники, окружности и прямоугольники. Для обнаружения графических примитивов на изображении используется ряд методов и алгоритмов. Сравнительный анализ наиболее часто применяемых методов данного назначения приведен в таблице 2.
Таблица 1 - Классификация графических примитивов
Тип примитиваОписаниеТочкаПростейший графический примитив, имеющий нулевую размерность. Точка характеризуется только координатами своего местоположения.ОтрезокСовокупность точек, через которые проходит геометрический отрезок с заданными конечными точками. Характеризуется начальной и конечной точками, или начальной точкой и приращениями координат, или длиной и углом наклона.ЛоманаяПоследовательности отрезков, соединяющих заданные точки.ПолигонОбласть, ограниченная замкнутой ломанной.ЭллипсГеометрическое место точек плоскости, для которых сумма расстояний до двух данных точек (фокусы) постоянна и больше расстояния между ними.ОкружностьГеометрическое место точек плоскости, равноудаленных от заданной точки, называемой центром, на заданное ненулевое расстояние, называемое ее радиусом.ПараболаГеометрическое место точек, равноудаленных от данной прямой (директриса параболы) и данной точки (фокус параболы).ГиперболаГеометрическое место точек плоскости, для которых абсолютное значение разности расстояний до двух выделенных точек (фокусы) постоянно.ТреугольникЧастный случай полигона, ограниченный замкнутой ломанной, состоящей из трех отрезков.ПрямоугольникПолигон, ограниченный замкнутой ломанной в форме четырехугольника, все углы которого прямые.
Таблица 2. Сравнительный анализ подходов к обнаружению графических примитивов
ПодходПреимуществаНедостаткиПреобразование ХафаПолное покрытие возможных состояний и положения объекта (за счет полного перебора в стандартном алгоритме). Модифицируемость алгоритма, что позволяет сократить время полного перебора без потери существенной информации.Предназначен лишь для поиска прямых и окружностей.Преобразование РадонаИнвариантность по отношению к качеству изображения. Применяемый математический аппарат позволяет легко переходить к другим видам преобразований (аффинным, Фурье).Сложность реализации. Огромное число операций.Генетические алгоритмыВ некоторых случаях позволяют добиться большей производительности по сравнению с преобразованиями Хафа и Радона. Адаптируемость к изменяющимся характеристикам изображения.Эвристический алгоритм, не позволяет говорить о детерминированности проводимых исследований.
В данной работе был выбран подход на основе преобразования Хафа. Преобразование Хафа позволяет добиться приемлемых результатов в рамках задач компьютерного зрения (например, в задачах распознавания рукописного текста) без потерь производительности. Ограниченность базового алгоритма в поиске прямых и окружностей исключается при использовании модификаций преобразования Хафа, а также применением аппроксимационных методов для нахождения более сложных графических примитивов (треугольников, прямоугольников). Задача поиска точек на изображении решается с применением угловых детекторов, основанных на схожих с преобразованием Хафа методиках анализа пространства изображения.
.2 Анализ и предварительная обработка входных данных
Входными данными для преобразования Хафа служат монохромные изображения. Процесс получения геометрического описания пространства изображения заключается в прохождении следующих этапов:
а)Ввод растрового цветного изображения.
б)Преобразование в полутоновое изображение.
в)Сглаживающая фильтрация (для устранения шумов).
г)Операторы выделения краев.
д)Бинаризация.
е)Преобразование Хафа (для нахождения точек, прямых, окружностей, треугольников и прямоугольников) или применение детектора Харриса и масочного детектора (для нахождения особых точек).
Рассмотренная последовательность действий не является строго фиксированной и допускается изменение порядка следования некоторых этапов, а также дополнение иными действиями по предварительной обработке изображения (например, применение морфологических операций).
1.2.1 Фильтрация шумов
В процессе считывания и преобразования в цифровой массив изображение подвергается различным искажениям и зашумлению, что требует эффективных средств его улучшения и реставрации.
Идея применения сглаживающих фильтров достаточно ясна. Заменой исходных значений элементов изображения на средние значения по маске фильтра достигается уменьшение "резких" переходов уровней яркости. Поскольку случайный шум как раз характеризуется резкими скачками яркости, наиболее очевидным применениям сглаживания является подавление шума. Однако контуры, которые обычно представляют интерес на изображении, также характеризуются резкими перепадами яркостей, поэтому негативной стороной применения сглаживающих фильтров является расфокусировка контуров. Другим применени