2. Разделение видеоаналитик по платформам
Автор: Виктор Черепанов
В предыдущей статье мы разобрались, почему видеоаналитика приносит огромную пользу не только в сфере охраны, но и бизнеса, а также начали рассматривать платформы, на которых она может работать.
Сейчас вы читаете вторую статью, посвященную видеоаналитике. В этой статье будут освещены следующие вопросы:
- Предустановленные в камеру аналитики. Как они работают?
- Есть-ли там нейросеть и как ее обучают? Плюсы и минусы такой аналитики. Стоимость решений.
- Аналитика в регистраторах.
- Внешние устройства аналитики.
- Серверная аналитика.
- Облачная аналитика.
Предустановленные в камеру аналитики. Как они работают?
Как я сказал ранее, встроенная видеоаналитика крутится на самом устройстве. Что, как бы, логично. :)
Использование специализированной аналитики на борту камеры является наиболее правильным решением при построении системы видеонаблюдения (СВН). У данного метода есть множество плюсов:
- Аналитика затачивалась под конкретное устройство видеонаблюдения. Это означает, что процесс анализа будет максимально оптимизирован и эффективен (насколько это, разумеется, позволяет железо).
- Снижение общего трафика, что ходит по сети. Например, можно реализовать передачу первого потока только в случае, если в кадр попадет человек, в противном случае будет идти только второй поток.
- Мы значительно снижаем нагрузку с конечного записывающего устройства (сервер, или регистратор), так как от камеры идет и поток, и уже обработанные метаданные.
- Появляется возможность реализовать взаимодействие со внешними устройствами, например, через тревожный выход замыкать управляющее реле от прожектора (или рупора сигнализации).
Казалось бы, отлично, дайте побольше камер, сейчас сделаем супер-аналитику!
И все было бы круто, если бы не одно но…
Темная сторона такого решения заключается в том, что:
- Мы имеем определенное производителем число аналитик. Исключением из правил можно назвать HEOP от HikVision и платформу AXIS, куда можно подгрузить собственноручно написанную аналитику.
- Нагрузка на камеру возрастает, причем солидно. Теперь, помимо оцифровки сигнала от матрицы, процессор (либо его сопроцессор) должен еще и произвести определенные действия (о чем поговорим далее). Соответственно, в камере должна быть большая вычислительная мощность (ТФЛОПС). Камеры некоторых производителей имеют на борту мощность вплоть до 10 ТФЛОПС, что, разумеется, стоит очень и очень недёшево.
- Для полноценной работы аналитики требуется чип APU/IPU, который снимает вычислительную нагрузку на себя. В случае его отсутствия в камере, аналитика может работать некорректно.
- Зачастую - это невозможность переобучить нейросеть для аналитики (а это важно).
- Почти всегда для адекватной работы аналитики систему требуется строить на монобрендовом решении, что также удорожает проект.
Как можно заметить, данный сценарий - палка о двух концах. С одной стороны - возможность сделать свою систему видеонаблюдения “умной”, а с другой - в случае, если СВН уже развернута, придется менять уже установленные на объекте камеры, что встанет в определенную сумму (при этом, снятые камеры нужно будет куда-то деть, либо держать в качестве запасных).
Что происходит внутри камеры?
Есть-ли в камере ИИ? Нет конечно, его как такового не будет года эдак до 2061.
Есть-ли в камере нейросети и “глубокое обучение”(deep learning) - определенно, да! И именно нейросеть и машинное зрение помогает “отсекать” ненужные события.
Когда-то давно в камерах использовали OpenCV, теперь же на смену ему пришли такие модули как SSD (Single Shot Detector - не путать с Solid State Driver!) и YOLO (You Only Look Once, недавно обновившийся до версии v8). Разумеется, нейросети различаются по своему быстродействию и точности срабатывания: когда одни модели быстро реагируют, но чаще “мажут” мимо цели, другие действуют медленнее, зато и процент ошибок значительно ниже. Предлагаю рассмотреть определенные, достаточно распространенные аналитики, которые можно реализовать на данных нейросетевых моделях.
Первая аналитика, которую я хотел бы разобрать - “Обнаружение человека/автомобиля” (или же IVS/AcuSence и так далее). Если говорить кратко, то в ней работает такая технология, как “Метод фонового вычитания”.
Об этом есть интересные статьи на хабре (и не только). Специально в рамках данной статьи я подобрал для вас целых три, уверен, что это будет интересно прочитать:
Ну, а для тех, кому “Многобукаф, не хочется читать…”, я сделаю максимально краткий и поверхностный пересказ данных статей, так как нейросети работают по похожему принципу и отличаются скоростью, точностью (ну и некоторыми фичами, конечно же).
Сам по себе процесс обучения - это нахождение экстремумов функций сходимости, но сам процесс, разумеется, значительно сложнее.
Опустим момент с развертыванием нейросети, так как это, разумеется, база. Сразу после развертывания начинается самый важный и ответственный этап любой взрослой нейросети - обучение.
Для нейросети подготавливают определенный объем размеченных данных, в контексте видеонаблюдения, это зачастую картинки (видео тоже можно загружать, и это, как ни странно, повысит точность определения, но и объем датасетов вырастет в разы), главное условие - единая размерность, например, 500х500 пикселей. Если картинка больше - ее сожмут, если меньше - то дополнят черным по краям, чтобы увеличить. Затем, системе “скармливают” расшифровку - маски этих картинок.
Далее, происходит “дробление картинки на сегменты” / grid cells (если речь идет о YOLO-модели), привязываются Bounding boxes (либо anchor boxes) - те самые “прямоугольнички”, которые обводят в кадре интересующий нас объект.
Стоит отметить, в рамках первой итерации данный процесс делается вручную, после чего нейросеть начинает работать с заранее подгруженным датасетом.
После того, как нейросеть обучится, мы получим детектор, который способен отображать интересующие нас объекты и отсекать ложные срабатывания. И все бы здорово, но с этим массивом данных тоже нужно работать. Поэтому в ход идёт ReID посредством DeepSort (на самом деле, вариантов масса), и о чудо - нейросеть способна сортировать и передавать метаданные.
Как я говорил выше, использование нейросетей повышает требования к аппаратной части камеры, и даже несмотря на более “жирную” начинку, большинство камер может работать с аналитиками только по паттерну “или, или”. Или обнаружение человека, или детекция лиц, к примеру. И лишь единичные модели у high-tier вендоров способны в работу “и, и”, при этом они тоже имеют свои нюансы.
На ноябрь 2024 года розничная стоимость камер Omny со встроенными аналитиками начинается от 9000 рублей
Аналитика в регистраторах
Алгоритм работы встроенной аналитики в регистратор точно такой же, как и в камерах (иногда, они обучаются на том же датасете, да и в целом, зачастую идентичны), поэтому нет смысла расписывать логику обучения заново. Плюсов в использовании аналитики исключительно на регистраторах, при построении СВН, меньше, а минусов - больше.
Перечислим плюсы:
- Главный плюс: возможность использовать интеллектуальные аналитики на уже установленный парк видеокамер (и то, с большим нюансом, о чем я расскажу далее).
- Как и в случае с камерами, мы имеем возможность реализовать взаимодействие со внешними устройствами посредством тревожных выходов на самом регистраторе.
- Возможность ведения единой базы данных (например, при использовании распознавания лиц), создания правил использования для конкретных камер.
А вот минусов, в данном случае, значительно больше, но оно и не мудрено, мы комбинируем в записывающем устройстве еще и AI-функционал:
- Как и в случае с камерами, число аналитик весьма и весьма скудное, а детекторы - необучаемы.
- Даже несмотря на то, что регистратор имеет встроенные аналитики, зачастую он способен анализировать картинку лишь с пары камер (обычно не более двух, а если разрешение камеры слишком высокое, порядка 8 Мп и более, то вовсе лишь одной). Связано это, как понимаете, с недостаточной производительностью встроенного процессора.
- Исходя из пункта выше - скорость работы аналитики, установленной в регистратор значительно ниже, так как устройство вынуждено комбинировать в себе сразу несколько действий - анализ и запись на жесткие диски.
- При использовании регистратора в качестве платформы для аналитики, мы повышаем нагрузку на него, ровно как и тепловыделение. В конечном итоге, это может привести к некорректной работе регистратора в целом.
Несмотря на присутствующие системе минусы, я все-же рекомендую использовать “умные” регистраторы вместе с камерами (конечно же, поддерживающими аналитику), особенно, когда речь идет о монобренде. Причина невероятно проста. Используя регистратор Omny с поддержкой метаданных, нам открывается возможность использовать наш интеллектуальный поиск “AcuSearch” в архиве (привет, AcuPick от Dahua) и прочие аналоги от сторонних производителей.
В конечном счете, это решает следующие задачи:
- Снижение требований к навыкам охранников (просто обведи интересующего человека мышью, и регистратор выдаст все кадры с камер, где присутствует этот человек).
- Увеличение скорости операций по поиску конкретного события (по схожим причинам).
На время написания этой статьи (а это ноябрь 2024 года) регистраторы Omny со встроенными аналитиками стоят от 17000 рублей
Внешние устройства аналитики
Внешние устройства аналитики являются промежуточными между камерой и регистратором / сервером.
Точно так же имеет заранее заготовленные аналитики, обученные по датасетам производителя. Платформа получает поток от камер, анализирует его, а далее отправляет обработанный поток метаданных, которые понимает (это важно!) регистратор. Пройдемся по плюсам и минусам.
Плюсы:
- Устройство способно обрабатывать значительное количество камер одновременно (48 различных камер, к примеру).
- Отсутствует как таковая нагрузка на регистратор и камеры. Устройство шлет готовые метаданные напрямую в регистратор.
- Нет необходимости в смене парка установленных камер. Как я сказал ранее, устройство получает поток от камеры, обрабатывает его и передает в регистратор, именно поэтому можно использовать ранее установленный “зоопарк” камер разных производителей.
Как ни странно, у данного способа также имеются недостатки.
Минусы:
- Стоимость устройства. Да, оно продвинутое, и закрывает задачу с лихвой, но вот цена будет сильно кусаться.
- Регистратор и устройство аналитики должны быть от одного производителя, а также регистратор обязан понимать метаданные, которые шлет устройство. В противном случае, все метаданные уйдут “вникуда”.
- Как и в случаях с аналитикой на камерах и регистраторах, есть лишь небольшой список аналитик, предлагаемых производителем, кроме того, не на каждом устройстве можно переобучить детектор.
Средняя стоимость подобных аналитических платформ от сторонних вендоров начинается от 360000 рублей.
Серверная видеоаналитика
Если рассматривать систему видеонаблюдения, построенную на основе полноценных серверных платформ, то можно провести прямые параллели с системами на регистраторах. И это вполне логично, ведь сервер действительно можно рассматривать как большой, мощный регистратор с расширенным функционалом.
Безусловно, можно приобрести бюджетное решение (но, зачастую, к серверным исполнениям приходят тогда, когда объем камер большой) и использовать его как регистратор с расширенными возможностями, к примеру - использовать шасси на 24 жестких диска.
Как я писал ранее, большинство производителей серверов для видеонаблюдения продают “голые” шасси - комплект железок, из которых состоит сам сервер, устанавливают ОС (чаще всего debian, реже - windows), поверх которой накатывают оболочку (GUI), либо оставляют сервер без локального отображения. Для того, чтобы программа могла взять RTSP-поток с камер, либо подключиться к ним по ONVIF, требуются лицензии специализированного ПО (модули аналитики зачастую продают как отдельную позицию), у каждого из производителей они имеют свое название. Например - OmnyVideo.
Достоинства данной системы неоспоримы - система достаточно гибкая, а самое главное - масштабируемая, что в случае расширения парка используемых камер, будет лишь плюсом. “Взрослые” серверные решения можно резервировать по модели N+M, вводить в эксплуатацию (или выводить из нее с сохранением всего записанного объема информации) стримеры, менять шасси серверов для увеличения количества используемых дисков, и не только.
В рамках аналитик, серверные решения являются наиболее гибкими и настраиваемыми, даже в сравнении с аналитиками на борту камер. Возможность переобучить ReID-алгоритмы, а также выполнить переобучение системы в целом.
Большинство (почти все, на самом деле) производителей видеоаналитики используют в качестве источника вычислительной мощности именно графические процессоры, за счет соотношения цена/производительность. Благодаря этому и достигается увеличение количества доступных аналитик. Никто не мешает доукомплектовать шасси десятком Nvidia Quadro и получить мощную платформу аналитики, которая еще и умеет строить рейды (а иногда, даже иметь дублирующий контроллер, который обеспечит сохранность информации), либо пойти другим путем - увеличить количество серверов и получить такую же вычислительную мощность.
И даже пропускная способность не станет серьезным ограничением. Если необходимо - можно установить дополнительные сетевые карты, хоть 10-гигабитные.
Также, нельзя забывать о возможности написания специализированных модулей аналитики под конкретные задачи (к слову, OmnyVideo может предложить и это).
Лишний раз повторюсь, что суть работы нейросетевого детектора максимально похожа на те, что “крутятся” на камерах, регистраторах и так далее. Сервер получает живой поток от камеры и прогоняет через развернутую нейросеть, добавляя метаданные.
Правда, стоит понимать, что при использовании продвинутых GPU (особенно, если их несколько в одном сервере) придется позаботиться об охлаждении, и и речь сейчас даже не об условных “отвалах” видеочипа.
Думаю, никто не станет спорить, что GPU имеют колоссальное тепловыделение (привет, high-end решения). А что еще имеет приличное тепловыделение при постоянной эксплуатации? Как это правильно говорится: “Прямо бинго!” - жесткие диски.
Что может быть лучше, чем хороший сервер? Несколько хороших серверов!
Если говорить кратко - при необходимости производить сложный анализ, а также хранить архив большого объема, следует разделить данный функционал на два разных сервера. При этом, стоит позаботиться о реализации охлаждения стойки в целом, при помощи кондиционера.
В финале подраздела предлагаю подбить в кратком виде плюсы и минусы подобной системы:
Плюсы:
- Возможность использовать камеры почти любого производителя - лишь бы шел RTSP поток. При этом, сложные аналитические процессы можно подвязать к уже установленным камерам, даже если они дешевые.
- Аналитика на серверах почти всегда является обучаемой: детектор можно перенастроить, в него можно подгрузить иной датасет (например, на заводе инженеры носят не белые каски, а фиолетовые. Классический детектор головных уборов не определит каску, а вот обученный на собственных данных - с легкостью).
- Колоссальная масштабируемость - можно объединить в кластеры несколько стримеров, либо увеличить вычислительную мощность конкретного сервера.
- Аппаратные RAID-контроллеры с возможностью дублирования массива.
- Кастомные аналитики, произведенные и обученные под конкретные задачи на заказ.
- Недостижимая для классических регистраторов глубина архива.
- Отсутствие упора в пропускную способность сетевого адаптера - возможность добавить дополнительные.
- Резервирование СВН по принципу N+M, когда в эксплуатации находится некоторое количество стримеров, а дублирующие простаивают до первой внештатной ситуации.
- Относительная свобода по выбору аппаратной составляющей сервера.
- Гибкость в выборе используемых аналитик.
- Аналитический поиск в архиве.
Минусы:
- Более высокая стоимость готового и укомплектованного сервера по сравнению с решениями на базе камер и регистраторов.
- Сервер имеет большие габариты, особенно, с большим архивом, поэтому крайне желательно место в стойке/шкафу.
- Как и любое электронное устройство с высокой производительностью, сервер сильно греется, соответственно - шум от системы охлаждения очень сильный.
- Не все производители готовы предоставить полноценную кастомизацию продукта под задачи клиента (либо делают это только для большого объема поставляемого оборудования и увеличенной стоимости проекта в целом).
- Для длительной работы крайне желательно использовать два раздельных устройства в качестве сервера хранения и сервера аналитики.
Также, у серверной платформы есть одновременно и плюс, и минус в одном лице: приобретая полноценное железо мы остаемся свободными в выборе используемого ПО, и вольны пересесть с одного на другое, если так захочется. Минусом же является тот факт, что ПО может работать некорректно, либо вовсе не заведется, так как требования к аппаратной составляющей у каждого производителя свои.
На ноябрь 2024 года стоимость серверных платформ Omny начинается от 270 тысяч рублей.
Облачная аналитика
Облачная аналитика является относительно свежим направлением в видеонаблюдении, как и облачные сервисы, в целом. Чисто технически, разница заключается в том, что мощный сервер находится не у вас в серверной, а в ЦОДе производителя, он же и отвечает за техническое обслуживание и сохранность записываемых данных.
Решение интересное, которое имеет свои плюсы и недостатки.
Плюсы:
- Значительная экономия на оборудовании. Как и в случае с локальной серверной аналитикой, к облачному сервису OmnyVideo можно подключить буквально любое оборудование, и аналитика будет работать полноценно.
- Отсутствует необходимость размещать свой сервер, периодически обслуживать его и следить за состоянием установленных дисков.
- Безопасность - злоумышленник не сможет украсть записи с доказательствами собственного преступления, так как архив находится на удаленном сервере.
- Масштабируемость - достаточно просто подключить дополнительные камеры и оплатить тариф.
Минусы:
- Самый главный - необходимость в стабильном и постоянном интернет соединении для трансляции потока от камер.
- Тарифная система. Камеру нельзя подключить к облаку на бессрочной основе, а большинство фирм, предлагающих облачную аналитику и хранение предлагают “пакеты” хранения - 3, 7 дней и так далее.
Выводы
Думаю, после прочтения у вас появилось понимание, каким образом работает “магия” внутри оборудования видеонаблюдения, а также, какими преимуществами и недостатками обладают способы реализации аналитики.
Что же будет дальше? Ровно то, что я анонсировал во вступлении - в следующей статье проведу разбор ошибок монтажников и рекомендации по установке камер видеонаблюдения.