
Главное
• Продукт — это интеграция. Файл весов YOLO не имеет коммерческой ценности, пока он не примет RTSP-поток, не сформирует метаданные ONVIF и не доставит событие детекции в Milestone, Genetec или вашу собственную VMS за 300 мс.
• Где запускать инференс — это вопрос денег, а не техники. Инференс прямо на камере при 2–5 Вт выигрывает у облака с его 7,5 ₽ за минуту потока, когда камер больше примерно 200; ниже этого порога Rekognition обходится дешевле собственного железа.
• Трёхуровневая топология побеждает. Детекция на стороне камеры, агрегация на шлюзе с Jetson или Hailo, повторная идентификация и поиск в облаке. В реальных задачах ничего не работает целиком на одном уровне.
• Приватность — это схема данных, а не регламент. Соответствие GDPR и CCPA определяется тем, как метаданные детекции хранятся, размываются и удаляются по сроку, — а не ежегодным пересмотром политики.
• Фора Софт делает интеграцию под заказ примерно за 10–21 млн ₽. Двенадцать недель, дообученные модели YOLOv9 или DETR, формирование метаданных ONVIF и конвейер событий, готовый к работе с VMS. Подход Agent Engineering сокращает классические сроки примерно на треть.
Распознавание объектов — самая дешёвая часть платформы видеоаналитики. Дорогая часть — решить, где оно работает, как формирует метаданные и какая VMS принимает событие. Именно с этим вендоры не помогают. Этот гайд — архитектура, выбор железа и схема интеграции, которые мы в Фора Софт используем в 2026 году, чтобы выпускать решения для распознавания объектов на камерах под заказ.
Планируете построить видеоаналитику, которая должна встать в вашу действующую VMS?
Назовите бренд камер, VMS и число одновременных потоков — мы вернёмся с топологией инференса, шорт-листом железа и планом интеграции на двенадцать недель.
Почему этот гайд написала Фора Софт
Фора Софт непрерывно выпускает продукты видеоаналитики с 2005 года, а детекция объектов на потоках с IP-камер живёт в нашем стеке ещё со времён MobileNet-SSD на NVIDIA Jetson TX1. Дальше — архитектура, которую мы реально применяем: что мы ставим на камеру, что запускаем на шлюзе, что отправляем в облако и как заставляем результат вести себя как полноправный элемент внутри Milestone XProtect, Genetec Security Center или кастомной VMS.
Мы исходим из реалий интеграции 2026 года: YOLOv9, DETR и несколько узкоспециализированных моделей под TensorRT, Hailo HEF, Axis ACAP или CoreML; события идут через MQTT или Kafka; метаданные формируются как XML по ONVIF Profile T; эмбеддинги хранятся в Milvus для повторной идентификации. Если под вашу задачу уже есть готовый продукт (подсчёт транспорта, распознавание номеров) — покупайте его. Если задача с нюансом — стройте под заказ, по схемам ниже.
Что изменилось в 2024–2026 годах
Три сдвига между 2024 и 2026 годами одновременно упростили и усложнили распознавание объектов под заказ.
Проще: рынок периферийных чипов взорвался. Hailo-8 на USB-стике выдаёт 26 TOPS при 2,5 Вт. Ambarella CV7 даёт 15 TOPS прямо внутри SoC камеры. Sony IMX500 размещает крошечный классификатор на самом сенсоре. NVIDIA Jetson Orin Nano предлагает 40 TFLOPS FP32 менее чем за 37 500 ₽. Инференс, которому в 2022 году требовался GPU-сервер, теперь умещается за одним PoE-портом.
Проще: YOLOv9 и YOLO-NAS сократили разрыв в точности. YOLOv9-E даёт 56% mAP на COCO — показатель, который четыре года назад потребовал бы двухстадийного детектора. YOLOv8n делает инференс за 1,47 мс на T4 под TensorRT. Открытой модели почти всегда достаточно; файл весов — это не преимущество, которое нельзя скопировать.
Сложнее: у GDPR и CCPA выросли зубы. CNIL вынесла более 100 решений по видеонаблюдению в 2025–2026 годах со штрафами свыше 200 000 евро. Поправки к CCPA в Калифорнии расширили правила хранения биометрии. Кастомная инженерия приватности — размытие лиц, маскирование номеров, ролевой доступ к исходному видео — теперь жёсткое требование, а не приятное дополнение.
Трёхуровневая архитектура: камера, шлюз, облако
Любое развёртывание крупнее горстки камер приходит к одной и той же трёхуровневой схеме. Читайте сверху вниз.
Уровень 1 — инференс на камере. Лёгкие детекторы (YOLOv8n, MobileNet-SSD, узкие классификаторы занятости) работают внутри прошивки камеры через Axis ACAP, Ambarella CV7 SDK или сенсорную среду исполнения вроде Sony IMX500. На выходе — ограничивающие рамки и метки классов, формируемые как XML-метаданные ONVIF Profile T параллельно RTSP-потоку. Задержка: 30–80 мс. Энергопотребление: 0,5–3 Вт сверх базового энергопотребления камеры.
Уровень 2 — агрегация на шлюзе. NVIDIA Jetson Orin, ускорители Hailo-8 в форм-факторе M.2 или шлюз на Intel OpenVINO принимают несколько RTSP-потоков, запускают более тяжёлые модели (YOLOv9-C, DETR, распознавание действий) и выполняют рассуждения по нескольким камерам сразу: отслеживают человека по всему цеху, считают время пребывания, сопоставляют распознавание номеров с системой контроля доступа. Задержка: 80–200 мс от начала до конца. Целевая плотность: 8–32 потока на один Jetson Orin NX.
Уровень 3 — облачная аналитика и поиск. Облако — это система учёта: метаданные детекции, эмбеддинги, журналы аудита. Здесь запускаются дорогие задачи (повторная идентификация за несколько дней, криминалистический поиск по внешнему виду, дашборды аналитики) и ничего из того, что должно работать в реальном времени. Сюда же встраиваются AWS Rekognition Video, Azure Video Indexer или Google Cloud Vision, когда под конкретную возможность нужен управляемый сервис.
Это разделение заставляет принять решение на первой же неделе: что остаётся локально, что уходит в облако с задержкой и что вообще не покидает сеть. Ошибётесь — и вы либо забиваете WAN-каналы сырым HD-видео (ошибка «только облако»), либо просите камеру запустить трансформер, который не помещается в её память (ошибка «только периферия»).
Выбирайте инференс на камере, когда: полоса пропускания ограничена, приватность требует, чтобы пиксель не покидал объект, или задача — это одноклассовый классификатор (движение, занятость, детекция погрузчика), умещающийся в 50 МБ.
Периферийные чипы в 2026 году: Axis, Hailo, Ambarella, Jetson, Sony
Выбор железа идёт по трём измерениям: где стоит чип, сколько TOPS он выдаёт и под какую среду исполнения команда готова разрабатывать.
| Платформа | TOPS | Среда исполнения | Типичная цена | Для чего лучше всего |
|---|---|---|---|---|
| Axis ARTPEC-8 + ACAP | ~6 TOPS | ACAP, нативно | В цене камеры | Парки камер на стандарте Axis |
| Ambarella CV7 | ~15 TOPS | CVflow SDK | OEM-камера | 4K + аналитика прямо в камере |
| Sony IMX500 | ~1–4 TOPS | Sony AITRIOS | В цене сенсора | Классификаторы на сенсоре |
| Hailo-8 / Hailo-8L | 26 / 13 TOPS | HailoRT, HEF | 9 750–18 750 ₽ за модуль | M.2-апгрейд NVR или шлюза |
| NVIDIA Jetson Orin Nano / NX | 40 / 100 TOPS | TensorRT + DeepStream | 18 600–74 900 ₽ | Многопоточный шлюз |
| Intel OpenVINO CPU/iGPU | ~4–8 TOPS эффективных | OpenVINO IR | На имеющемся железе | Апгрейд при низкой плотности |
Для новых проектов «с нуля» мы по умолчанию берём карты Hailo-8 M.2, воткнутые в готовый мини-ПК или подержанный Dell OptiPlex; они дают 29,5 fps на YOLOv8n при 640×640 и потребляют 2,5 Вт под нагрузкой. Для существующих парков Axis самый беспроблемный путь — ACAP прямо на камере: он упрощает шлюз. Jetson Orin выигрывает, когда одна коробка должна гонять разнородные модели (детекция + поза + распознавание номеров) сразу на 16–32 потоках.
Выбирайте Jetson Orin, когда: ваш шлюз должен одновременно запускать четыре и более семейства моделей — большинство развёртываний на Hailo-8 упираются в потолок планирования DSP после двух одновременных графов моделей.
Выбор модели: YOLOv9, DETR или что-то поменьше
Три семейства моделей покрывают 90% задач распознавания объектов в 2026 году. Выбирайте по бюджету задержки и по тому, есть ли в коробке GPU.
Семейство YOLO (YOLOv8, YOLOv9, YOLO-NAS). Одностадийные детекторы без якорей. YOLOv8n для камер на периферии (умещается в 6 МБ, 1,47 мс на T4), YOLOv8m для Jetson (30 fps в 1080p), YOLOv9-E для облака или серверных шлюзов (56% mAP COCO). Инструментарий Ultralytics чисто экспортирует в TensorRT, ONNX, HailoRT, OpenVINO и CoreML.
DETR и его варианты (DETA, RT-DETR, Deformable DETR). Детекторы на трансформерах. Чище ведут себя в насыщенных сценах, потому что сопоставление якорей заменено на предсказание множеств. RT-DETR достигает скорости YOLOv9, сохраняя семантику трансформера. Берите, когда в сцене 30+ перекрывающихся объектов или когда системе ниже по конвейеру нужны глобальные карты внимания для объяснимости.
Узкоспециализированные модели поменьше. MobileNet-SSD, EfficientDet-Lite или крошечный кастомный классификатор, когда задача одноклассовая (погрузчик, каска, огонь). Классификатор детекции огня размером менее 2 МБ выигрывает у YOLO по доле ложных срабатываний, потому что обучающая выборка уже и тщательнее отобрана. Никогда не берите универсальную модель там, где есть специализированная.
| Модель | COCO mAP | Задержка (T4 FP16) | Где работает |
|---|---|---|---|
| YOLOv8n | 37,3% | 1,5 мс | На камере, Hailo, Jetson |
| YOLOv8m | 50,2% | 4,2 мс | Jetson Orin NX, Hailo-8 |
| YOLOv9-E | 56,0% | 12 мс | Серверный GPU, облако |
| RT-DETR-L | 53,0% | 9 мс | Серверный GPU |
| MobileNet-SSD (300) | 24,0% | Менее 1 мс на камере | IMX500, ACAP начального уровня |
Квантизация TensorRT INT8 снижает задержку ещё в 3–5× на железе NVIDIA; HEF-компилятор Hailo и Post-Training Quantization от Intel OpenVINO дают сопоставимые результаты на своих платформах. Разрыв в точности между FP32 и INT8 у моделей семейства YOLO обычно 1–2% mAP — почти всегда не стоит того, чтобы за него бороться.
Выбирайте RT-DETR, когда: в сцене 30+ перекрывающихся объектов или системе ниже по конвейеру нужны карты внимания для объяснимости — сопоставление якорей у YOLO начинает путать рамки при плотной толпе или складской планировке.
ONVIF Profile T: контракт на метаданные
Событие детекции бесполезно, если оно не попадает в ту VMS, которой уже пользуется служба безопасности. ONVIF Profile T, аналитический профиль, задаёт XML-схему метаданных детекции, которую Milestone, Genetec, Avigilon, Axis Camera Station и большинство open-source VMS принимают «из коробки».
Контракт прост: камера или шлюз выдаёт RTSP-поток с параллельной дорожкой метаданных. Каждый кадр несёт элемент MetadataStream с одним или несколькими элементами Object — у каждого есть ограничивающая рамка (нормированная 0.0–1.0), метка класса, уверенность и устойчивый ID трекера. Временные метки должны быть синхронизированы по кадрам с видеодорожкой; расхождение свыше 40 мс сбивает движок корреляции событий VMS.
Приложения Axis ACAP формируют метаданные ONVIF нативно. У NVIDIA DeepStream начиная с версии 6.4 есть плагин onvif-metadata-broker. Для нестандартных конвейеров мы обычно поставляем небольшой сервис на Go или Rust, который оборачивает выход инференса и говорит с VMS по ONVIF — это примерно 600 строк кода, и он живёт на шлюзе.
Для интеграции под конкретную VMS (Milestone MIP SDK, Genetec SDK, Avigilon Control Center SDK) мы дополнительно отправляем параллельный вебхук или вызов SDK, потому что движок правил VMS привязывается к проприетарным событиям предсказуемее, чем к универсальному ONVIF. Две дорожки, один источник истины.
Конвейер событий: MQTT, Kafka или вебхуки
Событиям детекции нужна шина. Три варианта закрывают любое реалистичное развёртывание.
MQTT. По умолчанию для небольших развёртываний с упором на периферию (менее 200 камер, менее 500 событий в секунду). Брокер — Mosquitto или HiveMQ. QoS 1 ради надёжности. Чисто умещается на том же шлюзе, где работает инференс. NVIDIA DeepStream публикует в MQTT нативно.
Kafka. По умолчанию свыше 500 событий в секунду или когда поток нужен нескольким независимым потребителям (VMS, хранилище аналитики, SIEM, оповещения). Confluent Cloud, MSK или self-hosted Strimzi. Топики по группам камер позволяют потребителям подписываться, не видя каждое событие. Срок хранения в семь дней типичен для повтора и отладки.
Вебхуки. Берите, когда потребитель — единственный SaaS (Splunk, PagerDuty, тикет-система) и вы не хотите тащить в стек ещё один брокер. Подписывайте каждый вебхук через HMAC-SHA256; не доверяйте IP-адресу источника.
Мы почти всегда комбинируем два: MQTT от камеры или шлюза вверх к локальному агрегатору, Kafka от агрегатора дальше к потребителям. Такое разделение переживает отказ WAN (MQTT продолжает буферизировать локально) и масштабируется горизонтально (группы потребителей Kafka берут нагрузку на себя).
Эмбеддинги, повторная идентификация и криминалистический поиск
Детекция — лишь половина задачи. Как только рамка нарисована, коммерчески интересен другой вопрос: «это тот же человек, что мы видели вчера на камере 12?» Это задача повторной идентификации, и решается она на эмбеддингах, а не на детекциях.
Схема, которую мы поставляем чаще всего: 256- или 512-мерный эмбеддинг на каждый обнаруженный объект, вычисляемый на шлюзе лёгкой моделью эмбеддингов (OSNet-x0_25 для людей, модель по цвету и текстуре для транспорта) и записываемый в Milvus, Weaviate или Qdrant. Задержка запроса при 100 миллионах эмбеддингов, с хорошим индексом IVF_PQ, составляет менее 50 мс на одной скромной виртуальной машине.
Криминалистический поиск («найти всех в красной куртке, кто вчера вошёл в Зону 3») превращается в векторный запрос с фильтрами по метаданным. Когда клиенту это нужно, мы обычно докручиваем ElasticSearch для фасета метаданных (время, зона, камера) и Milvus для поиска ближайших соседей по вектору — примерно то же разделение, что и в современном ретейл-поиске.
Эмбеддинги повышают ставки в части приватности. Эмбеддинг — это биометрический идентификатор по большинству регуляций; так с ним и обращайтесь. Удаляйте эмбеддинги по тому же сроку, что и исходное видео, не дольше.
Приватность и соответствие требованиям, встроенные в систему
Анализ законного основания по статье 6 GDPR, биометрические положения CCPA и Закон ЕС об ИИ 2024 года относят большинство задач распознавания объектов в публичных местах к обработке высокого риска. Инженерные последствия вполне конкретны.
Анонимизация на уровне пикселей у источника. Размытие лиц и маскирование номеров работают на том же шлюзе, что и детекция. Неанонимизированный кадр никогда не покидает шлюз, пока авторизованный следователь не запустит депонированную разблокировку с подписанной аудиторской записью, эквивалентной ордеру. Библиотеки: OpenCV GaussianBlur для лиц, когда важна пропускная способность, или специализированный парсер лиц для масок сегментационного качества.
Ролевой доступ к исходным и анонимизированным потокам. Интеграция с VMS должна показывать два параллельных потока. По умолчанию интерфейс показывает анонимизированный поток. Доступ к исходному требует повышенной роли и пишет аудиторское событие в SIEM. Это самое частое нарушение CNIL, которое мы видим.
Сроки хранения по классам данных. Исходное видео: типично 7–30 дней, максимум 90 дней без специального юридического основания. Анонимизированное видео: столько же или меньше. Метаданные детекции: 1–3 года для аналитических задач, удаляемые по запросу субъекта. Эмбеддинги: как исходное видео.
Доступ субъекта к данным и их удаление. Процесс обработки запроса субъекта данных по GDPR должен находить каждый кадр с определённым лицом или номером — через тот же индекс эмбеддингов, что и для криминалистического поиска. Заложите эту возможность заранее; дорабатывать её, когда об этом уже спросил специалист по защите данных, — сюрприз на несколько спринтов.
Выбирайте анонимизацию на объекте, когда: ваши камеры снимают публичные пространства или общие рабочие зоны в ЕС, Великобритании или Калифорнии — размытие на стороне облака создаёт разрыв в цепочке хранения, который регуляторы не принимают.
Специалист по защите данных задаёт неудобные вопросы о вашем конвейере видеоаналитики?
Мы проводим двухнедельный аудит «приватность по дизайну»: топология анонимизации, схема хранения, процесс запросов субъектов и доказательная база DPIA по статье 35 GDPR. На выходе — аудиторский пакет, который специалист по защите данных может подписать.
Периферия, шлюз или облако: компромисс по стоимости
Где работает инференс — это вопрос юнит-экономики. Ниже — приблизительная математика точки безубыточности, которую мы используем на старте каждого проекта.
Только облако (AWS Rekognition Video или Azure Video Indexer). Примерно 7,5 ₽ за минуту потока, или около 328 500 ₽ на камеру в год при работе 24/7. Нормально для 10–50 камер; катастрофа свыше 200.
На шлюзе (Jetson или Hailo на месте). Один Jetson Orin NX за 112 500 ₽ тянет 16–32 потока; с амортизацией за пять лет это менее 1 425 ₽ на камеру в год по железу плюс, может, 30 Вт потребления на коробку. Лицензии на ПО (Milestone XProtect и т. п.) — отдельный разговор.
На самой камере (Axis ACAP, Ambarella). Ноль дополнительного железа. Обновления моделей приходят как подписанные ACAP-пакеты или прошивка камеры. Работает чисто только тогда, когда в камере уже есть чип для инференса; апгрейдить старые камеры так нельзя.
Математика перехода: ниже 40–50 камер «только облако» часто дешевле всего, потому что вы избегаете капитальных затрат. Между 50 и 200 обычно выигрывает шлюз на Jetson. Свыше 200 привлекательным становится инференс на камере, потому что вы и так закладываете новое железо в цикл обновления.
Строить или покупать: где разработка под заказ окупается
Готовые аналитические продукты (Briefcam, iOmniscient, Viakoo, Avigilon Unusual Activity) закрывают стандартные задачи — подсчёт людей, нарушение периметра, оставленный предмет, праздношатание, распознавание номеров. Разработка под заказ окупается в трёх случаях.
Отраслевые таксономии классов. Готовая модель знает «человек, машина, грузовик». Вашим операциям нужно «погрузчик против рохли», «каска против шлема против защитной кепки» или «медицинская маска против N95». Кастомное дообучение YOLOv9 на 3 000–10 000 ваших собственных размеченных кадров обгонит универсальную модель на 5–15 процентных пунктов mAP по тем классам, что важны.
Межсистемные сценарии. Сама по себе детекция ничего не делает. «Объект обнаружен И дверь разблокирована И карта доступа не приложена» — это составное событие, которое готовые продукты выразить не умеют. Разрыв закрывают кастомные движки правил (Drools, CEP на Go или самописный конечный автомат).
Ограничения по суверенитету данных. Готовый SaaS отправляет кадры в облако вендора. Для большинства заказчиков из здравоохранения, обороны, финансов и критической инфраструктуры это неприемлемо. Кастомный стек держит кадры на объекте или в конкретном регионе.
Модель стоимости: интеграция под заказ за 12 недель
Цифры ниже — оценки Фора Софт на 2026 год с подходом Agent Engineering, для слоя распознавания объектов под заказ поверх существующей VMS и парка камер. Они консервативны.
Этап 1 — MVP модели и конвейера (3–4 недели). Сбор разметки (на аутсорсе или существующей), дообучение YOLOv9 или DETR, экспорт в TensorRT или HailoRT, базовая отправка событий по MQTT, шлюз на docker-compose. Бюджет: ~1,8–3,3 млн ₽.
Этап 2 — интеграция с VMS и метаданными (3–4 недели). Формирование метаданных ONVIF Profile T, подключение Milestone MIP или Genetec SDK, правила событий VMS, наложение поверх интерфейса оператора. Бюджет: ~2,6–4,8 млн ₽.
Этап 3 — повторная идентификация, поиск и приватность (4–6 недель). Конвейер эмбеддингов, настройка Milvus, анонимизация лиц и номеров, ролевой доступ, журнал аудита, задачи по срокам хранения, артефакты DPIA. Бюджет: ~4,1–7,1 млн ₽.
Этап 4 — стабилизация (2 недели). Нагрузочное тестирование на целевом числе камер, учения по отказоустойчивости, документация, обучение операторов. Бюджет: ~1,8–3,3 млн ₽.
Итого. ~10–18 млн ₽ для развёртывания на 50–150 камер; ~15–26 млн ₽ для 150–500 камер с несколькими площадками. Эксплуатационные расходы (Milvus, Kafka, исходящий трафик, водяные знаки, если они нужны) обычно 225 тыс.–1,1 млн ₽ в месяц в зависимости от объёма.
Мини-кейс: 220 камер, три страны, одна проблема с погрузчиками
Логистический оператор с 220 камерами на складах в Германии, Польше и Великобритании попросил нас построить оповещение «погрузчик пересекает путь пешехода», которое их действующая установка Milestone XProtect могла бы показывать как полноправное событие. Готовая аналитика оценила работу примерно в 18 евро на камеру в месяц поверх их текущих лицензий; хуже того, готовая модель давала 30% ложных срабатываний на их планировке с антресолями.
Решением стала 14-недельная разработка под заказ. Мы разметили 7 400 кадров из их собственных записей, дообучили YOLOv9-C на классах «погрузчик / пешеход / рохля», развернули его на карте Hailo-8 M.2 в одном компактном ПК на каждый склад, наладили формирование метаданных ONVIF Profile T плюс событие Milestone MIP SDK для оценки составных правил и поставили наложение для оператора, которое показывало составное событие прямо в существующем интерфейсе XProtect. Доля ложных срабатываний упала до 4,1% на проверочной выборке; сквозная задержка детекции установилась на 180 мс.
Эксплуатационные расходы после запуска вышли примерно на 3,40 евро на камеру в месяц (амортизация железа Hailo плюс крошечный кластер Kafka, общий на все площадки). Хотите похожую оценку для вашего парка камер? Позвоните нам по телефону +7 (911) 236-51-91 или напишите на info@fora-soft.ru — присылайте свою VMS, бренды камер и несколько видео с ложными срабатываниями.
Готовая аналитика топит ваших операторов в ложных срабатываниях?
Мы замеряем вашу текущую долю ложных срабатываний, дообучаем кастомный детектор на ваших собственных записях и встраиваем его в вашу VMS. От четырёх до шести недель до измеримого снижения.
Схема принятия решения в пяти вопросах
1. Сколько камер и где они сосредоточены? Меньше 40 — «только облако», вероятно, дешевле всего. Больше 200 — инференс на камере или на шлюзе. 40–200 обычно сводится к шлюзам на Jetson или Hailo.
2. Какая VMS уже стоит? Milestone XProtect, Genetec Security Center, Avigilon или кастомная. VMS задаёт контракт на метаданные (ONVIF Profile T плюс SDK вендора) и путь к интерфейсу оператора.
3. Есть ли ваши классы в готовой модели? Если хватает «человек, транспорт, животное» — начинайте с дообучения готового YOLO или с готового аналитического продукта. Если нужно «погрузчик против рохли» — закладывайте раунд разметки.
4. Какое регулирование применяется? Развёртывания в ЕС, Великобритании или Калифорнии требуют «приватности по дизайну» с первого спринта. В АТР и Латинской Америке всё зависит от юрисдикции; юристы должны высказаться до того, как хоть один эмбеддинг покинет устройство.
5. Нужны ли в задаче составные события? Если да — планируйте CEP-движок или конечный автомат на правилах с самого начала. Дорабатывать составную логику в конвейер с одиночной детекцией всегда удваивает сроки.
Пять ошибок, которые срывают проекты видеоаналитики
1. Обучить на готовом COCO и считать дело сделанным. Метки COCO смещены в сторону потребительских изображений. Складское освещение, промышленные интерьеры и камеры при слабом свете лежат вне этого распределения. Заложите раунд кастомной разметки на 3 000–10 000 кадров; именно он определяет mAP всего проекта.
2. Взять Jetson, потому что он знаком, а потом всё равно понадобится Hailo. Jetson гибкий, но прожорливый; Hailo экономичный, но ограничен двумя-тремя графами моделей. Часовой воркшоп по выбору железа до первого заказа экономит недели переделок.
3. Забыть про временную метку метаданных ONVIF. Расхождение в 40 мс между видеокадром и кадром метаданных сбивает трекер VMS. Мы видели развёртывания, выпущенные с расхождением в 300 мс, потому что никто не протестировал канал метаданных сквозь всю VMS.
4. Заложить неверную размерность вектора. 128 измерений слишком мало для повторной идентификации людей на горизонте месяцев, 1024 измерения расточительны и медленны. Эмбеддинги 512 измерений на OSNet или MobileFaceNet — золотая середина для индексов Milvus масштаба предприятия.
5. Относиться к приватности как к галочке на последней неделе. Анонимизацию, ролевой доступ и сроки хранения нужно проектировать внутри потока данных, а не прикручивать сверху. Один штраф CNIL свыше 100 000 евро погубил больше проектов кастомной аналитики, чем любой технический сбой.
Метрики, которые стоит вывести на дашборд
Метрики модели. mAP на собственной проверочной выборке заказчика (не на COCO), доля ложных срабатываний на камеру за 24 ч, доля пропусков по трём наиболее критичным для операций классам. Переоценивайте после каждого раунда развёртывания.
Метрики конвейера. Сквозная задержка детекции p95 (от камеры до события VMS), расхождение временных меток метаданных, доля потери потоков, глубина очереди инференса на шлюз. Поднимайте дежурного по тревоге, если p95 уходит за 400 мс.
Бизнес-метрики. Тревоги за смену оператора, время подтверждения тревоги оператором, предотвращённые инциденты (привязка к журналу инцидентов заказчика), стоимость на одно обнаруженное событие. Именно это удерживает финансирование проекта на второй год.
Когда разработка под заказ — неправильный ответ
Три ситуации требуют готового продукта. Если ваше развёртывание — меньше 40 камер на одной площадке, то Rekognition Video плюс базовая VMS вроде Milestone Essential+ обойдётся за три года дешевле, чем интеграция под заказ. Если ваша задача — решённый ширпотреб (распознавание номеров, нарушение периметра, детекция масок образца 2021 года), готовая аналитика от Axis, Briefcam или Avigilon уже обучена на десятках тысяч часов записей, которые вам не повторить. А если у вашей службы безопасности нет операционной экспертизы по ИИ, управляемый сервис SaaS-вендора выигрывает у кастомного конвейера, работающего на железе, которого никто в штате не понимает.
Разработка под заказ окупается, когда таксономия классов проприетарна, когда сценарий составной или когда суверенитет данных не подлежит обсуждению. В остальных случаях — покупайте.
Частые вопросы
Сколько размеченных кадров нужно, чтобы дообучить детектор?
Для одного нового класса при дообучении модели семейства YOLO обычно достаточно 3 000–5 000 размеченных кадров с разным освещением и ракурсами, чтобы обогнать готовую модель на ваших собственных записях. Для 5–10 новых классов или редких событий закладывайте 10 000–30 000. Циклы активного обучения — размечать кадры, где модель неуверенна, — эффективнее случайной выборки после первой тысячи.
Можно ли запустить YOLOv9 на существующей камере Axis?
Только на камерах с чипами ARTPEC-7 или ARTPEC-8, поддерживающими ML-инференс нативно через ACAP. Полная YOLOv9-E не поместится, но квантизованная YOLOv8n разворачивается чисто. Для более старых камер ARTPEC без ML-ускорителя запускайте инференс на шлюзе с Jetson или Hailo рядом с камерой и оттуда отправляйте метаданные ONVIF обратно в VMS.
Какова реальная плотность потоков на Jetson Orin Nano?
Восемь потоков 1080p под YOLOv8m с частотой детекции 15 fps, или шестнадцать потоков при 10 fps. Orin NX удваивает эти цифры. TensorRT INT8 плюс тюнинг конвейера DeepStream — это разница между «работает» и «падает на 6 потоках».
AWS Rekognition Video дешевле, чем собственный Jetson?
Ниже примерно 40 камер, работающих 24/7, — да. Rekognition Video по 7,5 ₽ за минуту потока выходит примерно на 328 500 ₽ на камеру в год; Jetson Orin NX за 112 500 ₽, гоняющий 16 потоков, — около 1 425 ₽ на камеру в год по железу плюс электричество. Точка перехода сильно зависит от того, сколько часов в сутки камеры реально активны.
Работает ли ONVIF Profile T с Milestone XProtect «из коробки»?
Частично. XProtect принимает метаданные Profile T для экранных наложений и базовых правил событий, но любое составное правило («объект обнаружен И карта доступа не приложена») требует Milestone MIP SDK. Мы регулярно поставляем и то и другое: ONVIF для наложения, события MIP SDK для движка правил. У Genetec Security Center такое же разделение со своим SDK.
Как соблюсти GDPR, когда камеры снимают публичную улицу?
Задокументируйте основание «законный интерес» по статье 6(1)(f), проведите DPIA по статье 35, применяйте размытие лиц на уровне пикселей до того, как кадр покинет шлюз, держите исходные записи за ролевым доступом с журналированием аудита и установите срок хранения на минимуме, который служит вашей задокументированной цели (обычно 30 дней). Специалист по защите данных должен дать согласие; не пропускайте этот шаг.
Что меняет Закон ЕС об ИИ?
Удалённая биометрическая идентификация в реальном времени в публичных местах в основном запрещена с узкими исключениями. Распознавание эмоций на рабочих местах и в школах запрещено. Системы высокого риска — а это большинство корпоративной видеоаналитики с биометрическими функциями — требуют управления рисками, управления данными, журналирования, человеческого контроля и оценки соответствия. Планируйте формальное техническое досье и представителя в ЕС, если вы не из ЕС.
Сколько занимает реалистичное развёртывание на 50 камер?
От двенадцати до шестнадцати недель от старта до продакшена с подходом Agent Engineering, при условии существующей VMS и доступных записей с камер для обучения. С первой по четвёртую неделю — модель и конвейер; с пятой по восьмую — интеграция с VMS; с девятой по двенадцатую — приватность, поиск и стабилизация. Раунд разметки обычно идёт параллельно с работой над конвейером.
Что почитать дальше
Отрасли
Разработка камерных решений для распознавания объектов под конкретные отрасли
Схемы под конкретные сектора: производство, ретейл, логистика, здравоохранение.
VMS
Разработка VMS под заказ: как построить систему видеоменеджмента
Как построить собственную VMS, когда Milestone и Genetec не подходят.
Периферия
Периферийные вычисления в видеостриминге
Почему периферийные узлы важны для конвейеров инференса, чувствительных к задержке.
Стриминг
Разработка ПО для видеостриминга под заказ
Выбор архитектуры для слоя доставки под камерной аналитикой.
Услуги
Разработка ПО для видео- и аудиостриминга
Что мы делаем, как работаем и как выглядит типичный спринт.
Готовы выпустить распознавание объектов, которое ваша VMS действительно понимает?
Распознавание объектов в 2026 году — это три решения друг на друге: детектор (YOLOv9, RT-DETR или кастомный крошечный классификатор), где он работает (на камере, на шлюзе с Jetson или Hailo, или в тонком облачном слое) и как он говорит с VMS (ONVIF Profile T плюс SDK вендора). Сделайте эти три правильно — и программная половина задачи в основном решена. Ошибитесь хотя бы в одном — и доля ложных срабатываний будет изматывать ваших операторов, пока они не перестанут реагировать на тревоги.
Приватность и соответствие требованиям — невидимое четвёртое решение. Анонимизация, ролевой доступ, сроки хранения и аудиторские журналы — вот что отличает продукт, который выходит в свет, от проекта, который убивают юристы. Закладывайте их с первого спринта.
Давайте оценим вашу интеграцию распознавания объектов
Назовите число камер, VMS и важную для вас таксономию классов — мы вернёмся с планом на двенадцать недель, шорт-листом железа и фиксированной оценкой стоимости.
