LUNA PLATFORM v.5.62.3#
Изменения LP
-
SDK обновлен до версии 5.19.1.
В данной версии LUNA PLATFORM:
- поддержана 64ая модель нейронной сети для извлечения биометрических шаблонов лиц;
- дефолтная модель была изменена с 59ой на 62ую (настройка "DEFAULT_FACE_DESCRIPTOR_VERSION" сервиса Remote SDK).
При выполнении миграции настроек сервиса Configurator последней версии, настройка "DEFAULT_FACE_DESCRIPTOR_VERSION" не будет автоматически обновлена. При необходимости использования 62ой версии нейронной сети необходимо вручную изменить значение настройки "DEFAULT_FACE_DESCRIPTOR_VERSION", предварительно выполнив повторное извлечение существующих биометрических шаблонов с помощью 62 модели, используя задачу "Additional extraction.
-
В комплект поставки добавлены Helm чарты для разворачивания LUNA PLATFORM в кластере Kubernetes.
Администратор должен иметь развернутый и настроенный кластер Kubernetes для использования Helm чартов. Предполагается, что в пользовательском кластере Kubernetes:
- запущены СУБД PostgreSQL/Oracle и базы данных InfluxDB и Redis
- имеется доступ к объектному хранилищу S3-подобного типа для хранения бакетов
См. пример команд для разворачивания LUNA PLATFORM в кластере Kubernetes с использованием Helm чартов в новом руководстве (документ "LP_Kubernetes_Helm_Deployment_Example" в комплекте поставки) или на сайте с онлайн-документацией.
-
Для LUNA PLATFORM добавлен пользовательский интерфейс, реализованный в качестве веб-интерфейса для сервиса API.
Пользовательский интерфейс доступен по адресу
<host:5000/ui>
.См. описание пользовательского интерфейса в новом руководстве (документ "LP_User_Interface_Manual" в комплекте поставки) или на сайте с онлайн-документацией.
-
В запрос "videosdk" добавлена возможность трекинга людей на видео и оценки их атрибутов как контексте всего видео, так и на отдельных кадрах.
Для видеоаналитики трекинга людей ключевым понятием является трек. Трек — объект, содержащий информацию о положении одного человека на последовательности кадров. Трек создается тогда, когда на последнем кадре из указанного количества подряд идущих кадров (параметр "probe_count") появляется детекция лица, тела или тела с лицом (зависит от типа детектора в параметре "detector_type"). Треков может быть столько, сколько людей было обнаружено на кадре. Вместе с треком начинается событие видеоаналитики.
Примечание. В настоящий момент для одного трека может быть только одно событие. В будущих релизах для трека можно будет получить несколько событий, которые можно будет отправлять не дожидаясь окончания трека.
Например, если "probe_count" = "3" и на двух подряд идущих кадрах есть детекции, а на третьем нет, то трек и событие не начнутся. Если в какой-то момент трекинга человека на двух подряд идущих кадрах были детекции, а на третьем кадре детекция отсутствует, то трек и событие закончатся.
Во время трекинга человека доступна возможность выполнить оценку атрибутов лиц, тел, изображения (перечень оценок задается в параметре "targets"), а также получить изображение, в котором была лучшая детекция. Оценка может быть выполнена по одному лучшему снимку из трека или по нескольким (параметр "face_samples"/"body_samples" > "count"). При необходимости можно фильтровать лучшие снимки по параметрам "score", "head_pitch", "head_roll", "head_yaw". Все оценки, задаваемые в поле "targets" зависят от типа используемого детектора.
При необходимости можно включить повторную идентификацию тела (ReID). Функция ReId используется для повышения точности трекинга путем объединения различных треков одного человека.
Для такой видеоаналитики также доступна возможность настроить прямоугольную область интереса ROI (параметр "roi") на кадре (координаты "x", "y", ширина, высота, единицы измерения — проценты или координаты). Принцип работы области интереса ROI аналогичен FaceStream.
В каждом событии видеоаналитики подсчета количества людей содержится следующая информация:
- "event_id" — идентификатор события
- "track_id" — идентификатор трека
- "video_segment" — информация о сегменте видео (время начала события, время конца события, номер первого кадра, номер последнего кадра)
- "frames_estimations" — массив с информацией об оценках на каждом кадре, содержащий следующую информацию:
- номер кадра
- время, соответствующее кадру
- координаты bbox и степень достоверности ("score")
- "aggregated_estimations" — результат оценки, задаваемой в параметре "targets" в теле запроса
- "track_count" — количество треков
См. подробную информацию в спецификации OpenAPI.
-
В видеоаналитику подсчета количества людей добавлена возможность получения координат людей и изображений с максимальным количеством людей.
Для этого в тело запроса был добавлен новый параметр "targets", принимающий следующие значения:
- "coordinates" — вычисление координат людей
- "overview" — получение изображения с максимальным количеством людей
Можно задать как оба значения, так и ни одного. Если значения не заданы, то будет выполнен базовый анализ, содержащий только информацию о видеозаписи, количестве людей и кадрах, связанных с ними.
Координаты людей возвращаются в теле ответа в поле "events" > "aggregated_estimations" > "overview" > "people_coordinates".
-
Переработана структура запроса "generate stream events (beta)".
Поля "sources" > "source" > "face_bounding_boxes" и "body_bounding_boxes" (доступны при "source_type" = "raw_image") переименованы в "face_detection_data" и "body_detection_data" соответственно и переработаны следующим образом:
- Параметры "height", "width", "x", "y" перемещены в поля "face_detection_data"/"body_detection_data" > "bounding_box".
- Поля "face_detection_data"/"body_detection_data" теперь содержат новые опциональные поля "score", "angles" (содержит параметры "pitch", "yaw" и "roll") и обязательное поле "bounding_box" (см. выше).
- В поля "face_detection_data"/"body_detection_data" добавлена возможность указания пользовательских ключей со значениями.
Поле "sources" > "source" > "face" (доступно при "source_type" = "detections") теперь содержит новые опциональные поля "score" и "angles". Также в поле "face" добавлена возможность указания пользовательских ключей со значениями.
Также в поле "sources" > "source" добавлена возможность указания пользовательских ключей со значениями.
-
Расширено описание поля "cron" в запросах "create tasks schedule", "replace tasks schedule", "get tasks schedules" и "get tasks schedule".
-
Статистика запросов в формате Prometheus дополнена временем выполнения запроса.
Данные представлены в формате гистограммы, которая позволяет анализировать распределение времени выполнения запросов и выявлять потенциальные проблемы производительности. Каждый интервал времени (бакет) в гистограмме отображает количество запросов, время выполнения которых попадает в соответствующий диапазон.
См. подробную информацию в разделе "Экспорт метрик в формате Prometheus".
-
Добавлена возможность установки меток для запуска lambda с использованием конкретных узлов Kubernetes с помощью параметра "deploy_parameters" > "selector".
Это позволяет более детально контролировать развертывание lambda, позволяя администраторам указывать узлы, на которых должны быть размещены lambda в зависимости от их потребностей в ресурсах. Применяя метки к узлам Kubernetes и используя параметр "selector", администраторы могут управлять выделением ресурсов не только для отдельных lambda, но и для групп lambda с аналогичными требованиями к ресурсам.
См. запросы "create lambda", "put lambda", "get lambda", "get lambdas".
-
Уведомление, отправляемое во внешнюю систему с помощью механизма callback'ов, расширено параметром "result_url", содержащим внешний адрес к сервису API с результатом задачи или подзадачи.
-
Версия SDK для Handlers-lambda обновлена с версии 5.17.0 до версии 5.19.0.
-
Добавлена возможность указания количества подов для lambda.
Количество подов задается в параметре "pod_count" секции "deploy_parameters" запроса "create lambda". Можно задать от 1 до 32 подов.
Для каждого пода lambda также можно установить ограничения на процессор и память с помощью новых параметров "cpu_limit", "ram_limit", "cpu_request", "ram_request" в секции "deploy_parameters" > "resources".
Кроме того, в запросах "get lambda status" и "get lambda status" обновился выходной формат. Теперь логи возвращаются как словарь, что позволяет отобразить информацию о нескольких подах lambda.
Задать количество подов и ресурсы для существующей lambda можно с помощью запроса "put lambda".
-
В сервис Lambda добавлена поддержка использования пространств имен (namespace) Kubernetes, обеспечивающих изоляцию групп ресурсов внутри единого кластера.
Namespace задается в параметре "namespace" секции "deploy_parameters" запроса "create lambda". См. рекомендации к названиям namespace в описании параметра соответствующего запроса.
Задать namespace для существующей lambda можно с помощью запроса "put lambda".
-
Неиспользуемый параметр "landmarks17_threshold" удален из группы параметров "LUNA_REMOTE_SDK_BODY_DETECTOR_SETTINGS".
-
Новый ресурс
/metrics
добавлен в создаваемые lambda, позволяющий собирать и сохранять метрики в формате Prometheus в виде данных временных рядов, которые можно использовать для трекинга поведения lambda.См. подробную информацию в разделе "Экспорт метрик в формате Prometheus".
-
Переработана структура документации в комплекте поставки.
Системные требования LUNA PLATFORM вынесены в отдельный документ в комплекте поставки.
Руководства по установке перенесены в директорию "InstallationManuals".
Исправленные ошибки LP
- Исправлена ошибка, из-за которой некоторые параметры не отображались, когда фильтр "show_all" был включен в поле "Service name" на странице "Settings" пользовательского интерфейса сервиса Configurator.
Кроме того, фильтр "show_all" теперь установлен как значение по умолчанию.
-
Исправлена ошибка, при которой в некоторых случаях обработка расписания задач не перезапускалась должным образом после временной недоступности среды (например, базы данных).
-
Исправлена ошибка в сервисе Backport 3, из-за которой не происходила очистка списка закрытых веб-сокет соединений в случае, когда веб-сокеты были недоступны или не инициализированы.