Приступая к интеграции¶
Структура системы анализа и распознавания лиц на базе FindFace Enterprise Server SDK показана на следующей схеме:
FindFace Enterprise Server SDK включает в себя Сервер анализа и распознавания биометрических данных (далее Сервер FindFace или Сервер) и, опционально, видеодетектор для обнаружения лиц в видеопотоке (устанавливается как компонент fkvideo_detector
) и другие дополнительные компоненты.
Работу Сервера в свою очередь обеспечивают следующие компоненты:
Компонент | Описание |
---|---|
findface-facenapi |
Реализованный на Python сервис, обеспечивающий функционирование HTTP API. Данный сервис выполняет функцию обнаружения лиц на фотографиях, взаимодействует с базой данных MongoDB и сервисами findface-nnapi и tarantool@FindFace . |
tntapi (tarantool@FindFace как шард) |
Сервис, обеспечивающий взаимодействие между сервисом findface-facenapi и базой биометрических данных на основе Tarantool . Для увеличения скорости поиска на каждом сервере с базой данных Tarantool могут быть созданы многочисленные сегменты («шарды») tntapi. Их параллельное функционирование приводит к значительному увеличению производительности (в 70-100 раз). |
findface-nnapi |
Сервис, выполняющий посредством нейронных сетей извлечение вектора признаков (биометрического бразца) из обнаруженных лиц. Требует установки пакетов с моделями нейронных сетей <findface-data>.deb. |
MongoDB | База данных, в которой хранятся метаданные лиц, подробная информация о галереях, настройки и т. д. |
findface-upload |
Веб-сервер на базе nginx, который принимает изображения через WebDAV. Устанавливается, если требуется хранить исходные загруженные изображения, миниатюры и нормализованные изображения лиц на Сервере. |
NTLS |
Локальный сервер лицензий NTLS, который для проверки лицензии взаимодействует с глобальным сервером лицензий компании «НТех лаб» (в случае сетевой лицензии) или с ключом аппаратной защиты Guardant (при лицензировании в закрытой сети) и в случае успеха отправляет разрешения лицензируемым компонентам. |
Интеграция FindFace Enterprise Server SDK включает в себя следующие основные этапы:
- выбор архитектуры развертывания;
- подготовка физических серверов;
- установка необходимого стороннего ПО;
- установка лицензии и компонентов Сервера;
- создание токена авторизации and тестирование работы сервера;
- настройка обнаружения лиц на видео;
- Увеличение производительности путем балансировки нагрузки на компоненты и индексированием базы данных;
- настройка расширенных функций;
- создание интерфейса обмена данными между Сервером и партнерским приложением;