Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПЗ.docx
Скачиваний:
130
Добавлен:
01.06.2015
Размер:
1.85 Mб
Скачать

Содержание

ДР.14.И29.090103.11 2

Карманов Наран Викторович 2

АННОТАЦИЯ 2

DR.14.I29.090103.11 3

Karmanov Naran Viktorovich 3

SUMMARY 3

РЕФЕРАТ 4

ВВЕДЕНИЕ 7

АНАЛИЗ ТЕХНИЧЕСКОГО ЗАДАНИЯ 9

1.1Алгоритм Виола—Джонса 10

2.1.1Упрощенный хэш 29

4.1Выбор среды для разработки 37

Введение

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

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

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

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

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

Решение задачи обнаружения лиц особенно важно при использовании систем видеонаблюдения (таких, как CCTV) и в охранных комплексах. В связи с ростом вычислительной мощности персональных компьютеров и мобильных устройств, обнаружение лиц набирает популярность как способ организации человеко-машинного взаимодействия. Социальные сети, такие, как Facebook, обнаруживают лица в загруженных пользователем фотографиях и предлагают ассоциировать их с аккаунтом пользователя в сети. Также, существуют приложения с использованием «дополненной реальности», такие, как видеоигры, где игрок может взаимодействовать с объектами виртуального мира посредством движений и жестов, фиксируемых камерой.

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

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

Для реализации данного программного комплекса была выбрана библиотека с открытым исходным кодом OpenCV(от англ. Open Source Computer Vision Library).

OpenCV— библиотека алгоритмов компьютерного зрения, обработки изображений и численных алгоритмов общего назначения с открытым кодом. Реализована на C/C++, также разрабатывается для C#, Python, Java, Javascript, Ruby, Matlab, Lua и других языков. Может свободно использоваться в академических и коммерческих целях — распространяется в условиях лицензии BSD.

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

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

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

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

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

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

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

бустинг;

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

перцептивный хэш – алгоритм;

расстояние Хэмминга;

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

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

безопасность и экологичность работы.

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

    1. Алгоритм Виола—Джонса

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

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

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

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

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

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

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

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