Алгоритм работы#
Выбор лучшего кадра#
Взаимодействие компонентов при выборе лучшего кадра отражено ниже (Рисунок 2).

Ниже представлено пояснение к рисунку (Таблица 3).
Таблица 3. Описание диаграммы взаимодействия компонентов Системы при выборе лучшего кадра
Шаг |
Описание |
---|---|
(1) |
В RSE Server поступает запрос на соединение по WebSocket от клиента. Пример запроса:
|
(2) |
RSE Server передает запрос RSEngine на запуск камеры (в библиотеку камеры). В зависимости от того, какая камера подключена, |
(3) |
Библиотека камеры запускает камеру |
(4) |
Библиотека камеры получает RGB, IR, Depth видеопотоки с камеры, разбивает на кадры и анализирует |
(5) |
Библиотека камеры передает набор кадров в RSE Server. В зависимости от параметра
|
(6) |
RSE Server отправляет запрос на обработку кадра (производится по каждому кадру) в SDK VisionLabs |
(7) |
SDK VisionLabs выполняет:
В случае, если все проверки пройдены, то процесс продолжается (переход к шагу 8). Если хотя бы одна проверка не пройдена, SDK VisionLabs отправляет запрос к камере на получение новых кадров для проведения повторной проверки до тех пор, пока есть детекция (возврат к шагу 4) |
(8) |
SDK VisionLabs выполняет оценку Liveness и сравнивает полученное значение оценки Liveness с пороговым значением. В случае, если полученное значение Liveness выше порогового значения, то текущий кадр становится лучшим кадром. Если полученное значение Liveness ниже порогового значения, то SDK VisionLabs отправляет запрос к камере на получение новых кадров для проведения повторной проверки до тех пор, пока есть детекция (возврат к шагу 4) |
(9) |
В случае, если проверка Liveness пройдена успешно, то полученный лучший кадр и атрибуты лица направляются в RSE Server |
(10) |
RSE Server преобразует выбранный лучший кадр и метаинформацию в формат MessagePack и отправляет клиенту во внешнюю систему |
Мониторинг состояния камеры#
Взаимодействие компонентов при мониторинге состояния камеры отражено ниже (Рисунок 3).

Ниже представлено пояснение к рисунку (Таблица 3).
Мониторинг запускается по умолчанию раз в 300 секунд, длительность можно изменить в параметрах
camera-monitoring
иcamera-monitoring-delay
в файлеrsengine.conf
.
Таблица 4. Описание диаграммы взаимодействия компонентов Системы при мониторинге состояния камеры
Шаг |
Описание |
---|---|
(1) |
RSE Server передает запрос RSEngine на запуск мониторинга камеры |
(2) |
Мониторинг камеры передает запрос на получение информации о статусе камеры в библиотеку камеры — RealSense2 SDK, VLS LUNA CAMERA 3D SDK или VLS LUNA CAMERA 2D SDK в зависимости от того, какая камера подключена — IntelRealSense, VLS LUNA CAMERA 3D или VLS LUNA CAMERA 2D SDK |
(3) |
Библиотека камеры передает запрос на получение информации о статусе камеры |
(4) |
Библиотека камеры получает статус камеры |
(5) |
Библиотека камеры передает информацию о статусе камеры в мониторинг камеры |
(6) |
RSEngine передает информацию о статусе камеры в RSE Server |
(7) |
RSE Server записывает данные о статусе камеры в реестр (на ОС Windows) или в рабочую папку ./logs (на ОС Ubuntu 18.04 x64, Debian 10 x64 и Armbian 23) |