Видеоаналитика

Распознавание номеров автомобилей

В Viinex встроен алгоритм для распознавания номеров автомобилей. Как и другие функции Viinex, этот алгоритм доступен через HTTP RPC. Для распознавания текста на номерной пластине, клиентское приложение отправляет в теле HTTP-запроса к Viinex изображение, и в теле HTTP-ответа получает результат распознавания. Такая схема предполагает, что клиентское приложение знает, в какой момент необходимо выполнить распознавание, или, - когда номерная пластина автомобиля находится в поле зрения камеры. Такое предположение обычно выполняется в задачах, связанных с автоматизацией КПП или весовых терминалов.

Важной особенностью алгоритма распознавания номеров автомобилей, встроенного в Viinex, является то, что он не привязывается к одной камере: клиентское ПО может использовать один экземпляр этого алгоритма для распознавания номеров по многим камерам.

Система распознавания номеров автомобилей, предлагаемая в Viinex, не требует настроек, связанных с положением камеры или размером номера в поле зрения. Это существенно упрощает развертывание и использование данного алгоритма. Все, что требуется сделать для распознавания автомобильного номера, - это получить JPEG изображение от камеры, и отправить его HTTP-запросом в алгоритм распознавания, - без каких-либо дополнительных параметров.

Более подробная информация о решении для распознавания номеров автомобилей в Viinex доступна в презентации.

Распознавание номеров железнодорожных вагонов

Viinex содержит решение для распознавания номеров железнодорожных вагонов по видео. Распознавание может происходить либо по сигналу от оптического датчика, регистрирующего прохождение вагонов перед камерой, либо по вызову от ПО, интегрирующего Viinex. В обоих случаях результаты распознавания выдаются в интегрирующую систему как события (по протоколу WebSocket), а также могут быть получены с помощью отдельного HTTP запроса к Viinex.

Более подробная информация о решении доступна в презентации. Для разработчиков доступно руководство на русском языке.

Детектор лиц

В Viinex доступна функциональность детекции лиц. Реализация разделена на два модуля: "движок", который обрабатывает отдельные статические изображения, и "модуль видеоаналитики", который предъявляет движку для анализа последовательность кадров до тех пор, пока не будет получен результат.

Оба модуля доступны для использования через HTTP API. Можно подать на вход движка произвольное изображение, используя утилиту CURL для формирования HTTP POST запросов к Viinex (изображение подается в теле HTTP запроса, и результат детекции лиц возвращается в виде JSON-структуры в теле HTTP ответа). Либо, можно связать модуль видеоаналитики для детекции лиц с видеоисточником - камерой, - для того чтобы по запросу находить лица на видео. В этом случае Viinex самостоятельно получает и передает для анализа требуемые видеоданные, тогда как клиентскому ПО остается получить только готовый разультаты детекции -- координаты лиц на изображении и временную метку кадра, на котором лица были найдены. После того как лица найдены на видео, модуль видеоаналитики сохраняет соответствующий кадр (или кадры) в буфере в оперативной памяти, чтобы клиентское ПО могло обратиться к ним позднее, как к снапшотам. Как и в других компонентах Viinex, для получения в качестве снапшота доступен как полный кадр, так и его отдельные части, ROI, на которых были обнаружены лица.

Видеоисточником, связанным с модулем детекции лиц на видео, может быть как IP камера или RTSP источник видео, так и USB камера, выдающая несжатый видеопоток. Кроме того, один модуль детекции лиц может быть связан с несколькими источниками видео (в том числе - разного типа), - для того чтобы обнаруживать лица на одной и той же сцене, глядя на нее с разных ракурсов, - с Viinex это может быть выполнено клиентским ПО за один вызов к HTTP API.

Базовые детекторы

Viinex содержит встроенные базовые детекторы видеоаналитики:

  • детектор движения
  • засветка изображения
  • затемнение изображения
  • расфокусировка или размытие изображения
  • изменение сцены или сдвиг камерыВидеоанализ может осуществляться при захвате raw-видео USB-видеокамер, видеокамер технического зрения или непосредственно с матрицы через драйвер самой видеокамеры, если Viinex используется как видеоподсистема камеры.

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

  • изменение статуса сухих контактов на борту IP-камеры.

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