Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Близнюк_ДВ.docx
Скачиваний:
103
Добавлен:
26.03.2016
Размер:
1.04 Mб
Скачать

Введение

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

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

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

Анализ технического задания

В соответствии с техническим заданием необходимо разработать программный комплекс, способный в реальном времени производить анализ каждого кадра видеопотока, обнаруживать одно или несколько лиц, глаза человека, выделяя их геометрическими фигурами, осуществлять пересчет геометрической модели целеуказателя и изменение координат целуказателя в соответствие с положением глаз человека-оператора. Для реализации данного программного комплекса была выбрана библиотека с открытым исходным кодом OpenCV (от англ. Open Source Computer Vision Library), а как метод распознавания был выбран метод Виолы-Джонса.

OpenCV – библиотека компьютерного зрения с открытым исходным кодом. Библиотека написана на C и C++, работает под Linux, Windows и Mac OS X. Происходит активная разработка интерфейсов для Python, Ruby, MATLAB и других языков.

Эта библиотека очень популярна за счёт своей открытости и возможности бесплатно использовать как в учебных, так и коммерческих целях.

На основе технического задания, мною был разработан перечень графического (раздаточного) материала по дипломной работе:

  • титульный лист;

  • цель дипломной работы;

  • алгоритм Виола – Джонса;

  • признаки Хаара;

  • обучение классификатора в методе Виолы – Джонса;

  • бустинг;

  • каскадная модель сильных классификаторов;

  • выбор среды для разработки;

  • основные классы и функции, используемые в работе;

  • технико-экономическое обоснование работы;

  • безопасность человеко-машинного взаимодействия;

  1. Метод обнаружения лиц

    1. Описание метода Viola Jones

Хорошим примером задачи реального времени, которая находит применение во многих областях, является обнаружение какого-либо объекта на изображении. Таким объектом зачастую является лицо человека. На данный момент существует огромное разнообразие подходов для обнаружения лиц. Метод, предложенный Виолой и Джонсом в 2001 году, стал настоящим прорывом в этой области. Этот метод приобрел большую популярность благодаря высокой точности и серьезной теоретической основе.

Основные принципы, на которых основан метод, таковы:

  • используются изображения в интегральном представлении, что позволяет вычислять быстро необходимые объекты;

  • используются признаки Хаара, с помощью которых происходит поиск нужного объекта (в данном контексте, лица и его черт);

  • используется бустинг (от англ. Boost – улучшение, усиление) для выбора наиболее подходящих признаков для искомого объекта на данной части изображения;

  • все признаки поступают на вход классификатора, который даёт результат «верно» либо «ложь»;

  • используются каскады признаков для быстрого отбрасывания окон, где не найдено лицо.

Обучение классификаторов идет очень медленно, но результаты поиска лица очень быстры, именно поэтому был выбран данный метод распознавания лиц в видеопотоке. Виола-Джонс является одним из лучших по соотношению показателей эффективность распознавания/скорость работы. Также этот детектор обладает крайне низкой вероятностью ложного обнаружения лица. Алгоритм даже хорошо работает и распознает черты лица под небольшим углом, примерно до 30 градусов. При угле наклона больше 30 градусов процент обнаружений резко падает. Рассмотрим подробно принципы, на которых основан алгоритм Виолы-Джонса. Данный метод в общем виде ищет лица и черты лица по общему принципу сканирующего окна.

      1. Принцип сканирующего окна

В общем виде, задача обнаружения лица и черт лица человека на цифровом изображении выглядит именно так:

  1. имеется изображение, на котором есть искомые объекты. Оно представлено двумерной матрицей пикселей размером w*h, в которой каждый пиксель имеет значение:

  1. от 0 до 255, если это черно-белое изображение;

  2. от 0 до 2553, если это цветное изображение (компоненты R, G, B).

  1. в результате своей работы, алгоритм должен определить лица и их черты и пометить их – поиск осуществляется в активной области изображения прямоугольными признаками, с помощью которых и описывается найденное лицо и его черты:

rectanglei = {x,y,w,h,a}, (1.1)

где x, y – координаты центра i - го прямоугольника;

w – ширина;

h – высота;

a – угол наклона прямоугольника к вертикальной оси изображения.

Иными словами, применительно к рисункам и фотографиям используется подход на основе сканирующего окна (scanning window): сканируется изображение окном поиска (так называемое, окно сканирования), а затем применяется классификатор к каждому положению. Система обучения и выбора наиболее значимых признаков полностью автоматизирована и не требует вмешательства человека, поэтому данный подход работает быстро.

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