Обзор алгоритмов распознания объектов на двумерных изображениях. Выбор языка программирования. Обнаружение устойчивых признаков изображения. Исследование алгоритмов поиска объектов на плоскости. Модификация алгоритма поиска максимума дискретной функции.
Аннотация к работе
В настоящее время с развитием вычислительных систем и информационных технологий растет популярность систем автоматизации и роботизации, как в промышленности и науке, так и в повседневной жизни. Как следствие растет потребность в эффективных методах обработки поступающей информации, в частности видео данных. Эффективная обработка и использование входной информации позволяет значительно повысить производительность и расширить круг применения данных систем. В последнее время все большее внимание уделяется системам, использующим машинное зрение в качестве основного источника информации. Компьютерное зрение (машинное зрение) - совокупность программно-технических средств, обеспечивающих считывание в цифровой форме видеоизображений, их обработку и выдачу результата в форме, пригодной для его практического применения в реальном масштабе времени.Когда мы смотрим на окружающих нас лица людей, предметы, природу, мы не осознаем какой объем работы проделывает наш мозг, что бы обработать весь поток визуальной информации. Нам не составит труда найти знакомого нам человека на фотографии, или отличить здание от памятника. Изображения имеют разный масштаб. Предмет, который мы воспринимаем как что-то отдельное, на изображении никак не выделен, и находится на фоне других предметов. Поэтому поворот объекта и изменение угла обзора кардинальным образом влияют на его двумерную проекцию - изображение.Имя, получившееся в итоге, происходит от оператора С « » (увеличение значения переменной на единицу) и распространенному способу присвоения новых имен компьютерным программам, заключающемся в добавлении к имени символа « » для обозначения улучшений. Новые возможности С включают объявления в виде выражений, преобразования типов в виде функций, операторы new и delete, тип bool, ссылки, расширенное понятие константности, подставляемые функции, аргументы по умолчанию, переопределения, пространства имен, классы (включая и все связанные с классами возможности, такие как наследование, функции-члены, виртуальные функции, абстрактные классы и конструкторы), переопределения операторов, шаблоны, оператор ::, обработку исключений, динамическую идентификацию и многое другое. Доступны компиляторы для большого количества платформ, на языке C разрабатывают программы для самых различных платформ и систем. Язык спроектирован так, чтобы дать программисту максимальный контроль над всеми аспектами структуры и порядка исполнения программы. Ни одна из языковых возможностей, приводящая к дополнительным накладным расходам, не является обязательной для использования - при необходимости язык позволяет обеспечить максимальную эффективность программы.Дискретной кросскорреляций функций f(t) и g(t), определенных на множестве целых чисел Z, называется следующая операция: Кросскорреляция чаще всего применяется в обработке сигналов, при этом f считается образцом, а g - сигналом, содержащим образец. Максимум этой функции будет находиться в той области где изображения совпадают больше всего. Как упоминалось ранее операция кросскорреляции по сути является сверткой двух функций. Свертка функций - операция в функциональном анализе, показывающая «схожесть» одной функции с отраженной и сдвинутой копией другой. Преобразование Фурье - операция, сопоставляющая функции вещественной переменной другую функцию вещественной переменной.Как упоминалось ранее, данный алгоритм ищет глобальный максимум, следовательно он может найти лишь 1 совпадение. Решение заключается в том, что помимо глобального максимума необходимо найти и другие.SURF решает две задачи - поиск особых точек изображения и создание их дескрипторов, инвариантных к масштабу и вращению. Для каждой ключевой точки считается направление максимального изменения яркости (градиент) и масштаб, взятый из масштабного коэффициента матрицы Гессе. Градиент в точке вычисляется с помощью фильтров Хаара. Размер же области, на которой считается дескриптор, определяется масштабом матрицы Гессе, что обеспечивает инвариантность относительно масштаба. По сути, элементы матрицы Гессе вычисляются как свертка (сумма произведений) пикселей изображения на фильтры, изображенные на рисунке 1: Рисунок 1Для количественного анализа описанных алгоритмов поиска объектов на плоскости автором было проведено моделирование работы различных алгоритмов поиска объектов на различных наборах данных. При этом анализировалась скорость работы алгоритмов, а также их точность (количество правильно идентифицированных объектов).График показывает время обработки в зависимости от суммарного количества пикселов.График показывает, сколько процентов повернутых на угол объектов правильно локализовано, угол поворота указан в градусах.График показывает, сколько процентов заслоненных объектов правильно локализовано, нижняя ось отражает какой процент площади объекта заслонен.Результаты проведенных экспериментов показали, что алгоритм поиска максимума кросскорреляционной функции является наиболее быстрым из представленных алгоритмов.Автором была разработана программная реализ
План
Содержание
Введение
1. Назначение разрабатываемого приложения
2. Средства разработки приложения
2.1 Язык программирования C
2.2 Язык программирования C#
2.3 Среда разработки Eclipse
3. Обзор алгоритмов распознания объектов на двумерных изображениях
3.1 Алгоритм поиска максимума кросскорреляционной функции двух изображений
3.1.1 Модификация алгоритма поиска максимума дискретной кросскорреляционной функции от двух изображений
3.1.2 Модификации алгоритма поиска максимума кросскорреляционной функции
3.2 Обнаружение устойчивых признаков изображения: метод SURF
4. Исследование алгоритмов поиска объектов на плоскости
4.1 Методика исследования
4.2 Результаты исследования
4.2.1 Различные размеры подаваемых на вход изображений
4.2.2 Разные углы поворота объекта относительно сцены
4.2.3 Различные перекрытия объектов
4.3 Анализ результатов
5. Практическая реализация и применение алгоритмов поиска объектов на двумерных изображениях
Заключение
Список используемых источников
Приложение
Введение
В настоящее время с развитием вычислительных систем и информационных технологий растет популярность систем автоматизации и роботизации, как в промышленности и науке, так и в повседневной жизни. Как следствие растет потребность в эффективных методах обработки поступающей информации, в частности видео данных.
Эффективная обработка и использование входной информации позволяет значительно повысить производительность и расширить круг применения данных систем.
Подтверждением вышесказанному является повсеместное развитие и использование робототехники, систем распознания текстов, охранных систем основанных на распознании изображений, и т.д. В последнее время все большее внимание уделяется системам, использующим машинное зрение в качестве основного источника информации.
Что привело к возникновению потребности в новых алгоритмах обработки и распознания изображений.
Не смотря на это, задача распознавания образов до сих пор не решена в полном объеме. Однако, в рамках существенных ограничений, есть методы, позволяющие приблизится к ее решению.
Компьютерное зрение (машинное зрение) - совокупность программно-технических средств, обеспечивающих считывание в цифровой форме видеоизображений, их обработку и выдачу результата в форме, пригодной для его практического применения в реальном масштабе времени. Различают монокулярное и бинокулярное машинное зрение, предназначенных соответственно для построения и обработки плоских и объемных изображений. Исследование компьютерного зрения является научным направлением в области искусственного интеллекта и связанных с ним технологий считывания изображений реальных объектов, их обработки и использования полученных данных для автоматизированного решения прикладных задач. Начало разработок, связанных с данным направлением, относится к 1950-м годам. Первый реальный успех в этой области был достигнут в Корнеллской лаборатории аэронавтики в 1958-1960 годах в связи с реализацией на ЭВМ IBM-740 аппаратного варианта системы распознавания простейших зрительных образов - Mark I Perceptron (автор разработки - Фрэнк Розенблатт).
На текущий момент достаточно много различных подходов к реализации систем компьютерного зрения, начиная от различных вариаций на тему сравнения полученного изображения с шаблонным, до построения по изображениям сложных трехмерных моделей. Ввиду объемности темы распознания объектов я сконцентрирую свое внимание на алгоритмах распознания объектов на двумерных изображениях.