Возможности модуля анализа лица Intel Perceptual Computing SDK
Примеры приложений
Интерес к процессам отслеживания и распознавания лиц, всегда был значительным, особенно в связи с все возрастающими практическими потребностями: системы охраны, верификация кредитных карточек, криминалистическая экспертиза, телеконференции и т.д.
Последние десять лет распознавание лиц стало популярной областью исследований в компьютерном зрении и одним из самых успешных применений анализа изображений.
Основы распознавания лиц
Основы распознавания лиц (2)
Отслеживание и распознавание лиц является практическим применением теории распознавания образов, в задачу которого входит автоматическая локализация лица на фотографии или видеопотоке и, в случае необходимости, идентификация персоны по лицу.
Области применения
Обеспечение безопасности:
Транспортные узлы: аэропорты, вокзалы, автостанции, метро
Места массового пребывания людей: стадионы, развлекательные центры, бизнес-центры, кинотеатры
Усиление контроля:
Пограничные паспортно-визовые контрольные пункты
Проходные и КПП на режимных, стратегических и коммерческих объектах
Бесконтактный контроль состояния человека:
Диспетчеров и охранников
Пилотов, машинистов, водителей
Области применения
Реклама и маркетинговые исследования:
Интерактивные сервисы, реагирующие на мимику
Интерактивная реклама
Оценка удовлетворенности потребителя
Индустрия развлечений:
Создание 3D-фильмов
Моделирование виртуальной реальности
3D-медицина:
Обучение на 3D-моделях
3D-телемедицина
Классы систем распознавания лиц
Системы, позволяющие сравнивать фотографии из паспорта и реальное изображение человека, требуют присутствия оператора, позволяют производить операции в полуавтоматическом режиме.
Системы, осуществляющие контроль доступа путем сравнения изображения лица человека и изображения из БД, требуют дополнительных методов верификации (по проксимити-карте, по отпечаткам пальцев, по голосу и т. п.).
Системы идентификации личности по видеоизображению позволяют идентифицировать движущиеся лица, производя поиск, отслеживание и сравнение с БД в реальном времени.
Основы технологий отслеживания и распознавания лиц
Для решения задачи отслеживания и распознавания лиц были предложены различные методики, среди которых можно выделить подходы, основанные на нейронных сетях, на разложении Карунена-Лоэва, на алгебраических моментах, линиях одинаковой интенсивности, эластичных эталонах сравнения, а также антропометрический метод.
Основная идея распознавания лица состоит в выделении информативных признаков в изображении лица, кодировании и сравнении закодированного лица с базой данных.
Метод Виолы-Джонса
Самый популярный метод для поиска области лица на изображении;
Характеризуется высокой скоростью и эффективностью;
Позволяет осуществлять поиск лица в режиме реального времени.
Пол Виола и Майкл Джонс разработали и представили этот метод в 2001.
В основе метода Виолы–Джонса по поиску лица лежат идеи:
интегральное представление изображения по признакам Хаара,
метод построения классификатора на основе алгоритма адаптивного бустинга,
метод комбинирования классификаторов в каскадную структуру.
Признаки Хаара
Граничные, центральные и линейные признаки Хаара
Признаки Хаара (2)
Примеры использования признаков Хаара
Метод Виолы-Джонса (2)
Методу Виолы–Джонса присуща высокая вероятность точного обнаружения лица при наблюдении объекта под углом до 30°.
В стандартной реализации метода указанная особенность не позволяет обнаруживать лицо человека, повернутое под произвольным углом, что в значительной мере затрудняет или делает невозможным использование данного метода в современных системах
Метод главных компонент
Один из наиболее распространенных методов для уменьшения размерности данных, потери наименьшего количества информации;
Позволяет выделять характерные признаки лица и использовать их для реконструкции и восстановления;
Основан на преобразовании Карунена – Лоэва.
Главная идея этого метода состоит в представлении изображений лиц людей в виде набора главных компонент изображений, называемых «собственные лица».
Вычисление главных компонент основывается на вычислении собственных векторов и собственных значений ковариационной матрицы, которая рассчитывается из изображения.
Метод главных компонент (2)
Вычисление главных компонент основывается на вычислении собственных векторов и собственных значений ковариационной матрицы, которая рассчитывается из изображения.
Сумма главных компонент, умноженных на соответствующие собственные вектора, является реконструкцией изображения.
Пример изображений собственных векторов
Основы технологий отслеживания и распознавания лиц
Основной принцип работы программ по отслеживанию и распознаванию
Шаг 1 – Анализ изображения и поиск лица;
Шаг 2 – Обработка – выделение индивидуальных особенностей каждого обнаруженного лица;
Шаг 3 – Преобразование в цифровой код;
Шаг 4 – Сравнение с БД
SDK для создания приложений по отслеживанию и распознаванию лиц
Intel Perceptual Computing SDK
Kinect for Windows SDK
OpenCV
IIT Face Recognizer SDK
Возможности SDK модуля анализа лица
Intel Perceptual Computing SDK
Модуль анализа лица предоставляет набор алгоритмов, которые позволяют определять положение лица и его контрольных точек, распознавать лицо и его атрибуты.
Распознавание атрибутов лиц анализирует лицо(а) и возвращает такие значения, как возрастную группу лица, пол, и детали эмоций.
Модуль распознавания лица может проассоциировать данное лицо с именем, если человек ранее зарегистрирован в базе данных имен.
Возможности SDK модуля анализа лица (мимики)
Intel Perceptual Computing SDK
Алгоритм обнаружения лиц выявляет прямоугольную плоскость положения лица или нескольких лиц из изображения или видео последовательности.
Алгоритм определения контрольных точек дополнительно идентифицирует характерные точки лица (глаза, рот и т.д.) для определенного прямоугольника.
Общий алгоритм создания приложений по отслеживанию лица
1) Приложение использует функцию PXCSession::CreateImpl для создания экземпляра интерфейса PXCFaceAnalysis:
2) Инициализация модуля анализа лица
Общий алгоритм создания приложений по отслеживанию лица
3) Инициализация элементов отслеживания лица
Общий алгоритм создания приложений по отслеживанию лица
4) Цикл обработки данных:
Отслеживание лица на основе UtilPipeline
Для простого отслеживания лица и определения контрольных точек с входных данных камеры или записанного файла приложение может использовать конвейерный утилитный класс UtilPipeline: :
Данные отслеживания лица
Приложение может использовать функцию QueryData интерфейса PXCFaceAnalysis::Detection для нахождения данных по отслеживанию лица. Также это может быть множество лиц на любом изображении. Приложение может использовать функцию QueryFace для нахождения определения доступных лиц на изображении:
Данные контрольных точек лица
При нахождении данных по контрольным точкам приложение может использовать функции QueryLandmarkData и QueryPoseData интерфейса PXCFaceAnalysis::Landmark. Структура LandmarkData предоставляет данные о позиции для каждой определенной контрольной точки. Структура PoseData предоставляет информацию об ориентации головы.
Распознавание лица
Распознавание работает путем сравнения изображения (которое содержит лицо человека, находящегося перед камерой) с набором эталонных изображений.
Примеры приложений, представленных в Intel Perceptual Computing SDK
Face Tracking
Примеры приложений, представленных в Intel Perceptual Computing SDK
Face Recognition
Контрольные вопросы:
В каких областях применяются алгоритмы распознавания и отслеживания лиц?
Какие программные продукты вы знаете, где уже применяются алгоритмы отслеживания и распознавания лиц?
Какие библиотеки для разработчиков существуют, которые поддерживают возможности отслеживания и распознавания лиц?
Основные назначения SDK модуля анализа лица?
В чем заключается основной принцип программ по отслеживанию и распознаванию лиц?
Из каких шагов состоит общий алгоритм создания приложений по отслеживанию лица в Intel Perceptual Computing SDK?
В чем заключается задача отслеживания и распознавания лиц?