ИИ-система отслеживания покупателей внутри магазина
Сколько человек зашло сегодня в магазин — считает счётчик на входе. Сколько из них дошло до молочного отдела в глубине зала — не знает никто. Какой процент, взяв товар с акционного стенда, купил его, а какой вернул — тоже загадка. Внутримагазинный трекинг закрывает эти blind spots и превращает офлайн-ретейл в среду с аналитикой, сравнимой с e-commerce.
Техническая основа: multi-person tracking без идентификации
Важное уточнение: трекинг ≠ идентификация личности. Задача — отслеживать анонимный трек «человек A» по всему магазину без привязки к личности. Это юридически чище (GDPR, ФЗ-152) и технически проще.
Стек: детекция людей (YOLOv8m) → multi-object tracking (ByteTrack или BoT-SORT) → перезапуск треков при переходе между зонами камер (cross-camera re-identification по appearance без хранения биометрии).
ByteTrack — текущий стандарт для high-density сцен (магазин в час-пик): использует confidence-based association, не теряет треки при кратких окклюзиях. HOTA (Higher Order Tracking Accuracy) на MOT17: 63.1. Для ретейла важнее всего IDF1 — устойчивость ID через время.
Глубокий разбор: построение траекторий и зонирование
Coordinate mapping: пиксели → реальные координаты
Камера смотрит под углом, перспективно искажая пространство. Для построения реальных траекторий нужна гомография: матрица 3×3, которая проецирует пиксельные координаты на план этажа.
Calibration: выбрать 4+ опорных точки с известными координатами (углы плиток, маркеры на полу), вычислить матрицу через cv2.findHomography. После трансформации — каждый трек описывается в реальных координатах (метры от входа).
Для overhead камер гомография простая (почти affine). Для боковых камер — перспективная дисторция значительная, нужна более аккуратная калибровка или fisheye-undistortion.
Zone-based аналитика
Зоны задаются в редакторе (полигоны на плане этажа). Система в реальном времени считает:
- Dwell time по зонам: сколько секунд в среднем покупатель проводит у стеллажа с молоком
- Conversion rate зоны: процент покупателей, которые зашли в зону и совершили покупку в ней
- Traffic flow: тепловые карты и диаграммы потоков (sankey-диаграмма маршрутов)
- Bottlenecks: зоны с замедлением движения (очередь к кассе, узкий проход)
Кейс из практики: сеть продуктовых магазинов 12 точек, каждая 300–500 м². После анализа траекторий за 30 дней выяснили, что 68% покупателей никогда не заходили в правое крыло магазина, где размещался отдел с детскими товарами. Причина — плохой навигационный знак при входе. После перестановки навигации трафик в отдел вырос на 41%.
Counting и демографический анализ
People counting — базовый уровень: входящий / исходящий поток, текущая загруженность зала. Точность современных систем: ±3% при плотности до 50 человек/кадр.
Анонимный демографический анализ (возраст/пол) — опционально. Работает через face detection + age/gender classifier (без сохранения изображений, только агрегированная статистика). Полезен для настройки ассортимента и рекламы. Юридически: нужна явная информационная табличка в магазине.
Dwell time у конкретных товаров. Покупатель провёл у полки с кофе 45 секунд, но ничего не взял. Частота такого события + конверсия → insight для мерчендайзинга.
Инфраструктура
Два варианта деплоя:
Edge-first: вся обработка на локальном сервере в магазине. NVIDIA Jetson AGX Orin (32 TOPS) тянет 8–10 HD-потоков. Данные аналитики идут в облако, видео хранится локально 7–30 дней. Преимущество: нет зависимости от интернета, минимальный трафик в облако.
Cloud-hybrid: edge только для детекции (лёгкая модель), треки и аналитика — в облаке. Удобнее для сети магазинов с единым дашбордом.
Dashboard: Grafana или кастомный React SPA с Leaflet для отображения план-схемы магазина с тепловыми картами в реальном времени. API для интеграции с BI-инструментами клиента.
Сроки
Система для 1 магазина (трекинг + зонирование + дашборд): 5–8 недель. Платформа для сети с централизованным управлением и аналитикой: 3–5 месяцев.







